fromcarlostocosta commited on
Commit
03aa718
1 Parent(s): bc4a2dd

Model logs

Browse files
Files changed (2) hide show
  1. app.py +27 -7
  2. model_log.csv +1 -2
app.py CHANGED
@@ -3,10 +3,19 @@ from joblib import load
3
  from PIL import Image
4
 
5
  import pandas as pd
 
6
  import streamlit as st
7
 
8
  model = load("model.joblib")
9
 
 
 
 
 
 
 
 
 
10
  st.markdown('# Titanic Workshop - Would you be able to survive the Titanic disaster?')
11
  image = Image.open('titanic.jpeg')
12
  st.image(image)
@@ -43,10 +52,8 @@ passenger_data = {
43
  'Parch': parents,
44
  }
45
 
46
- passenger_data_df = pd.DataFrame.from_dict([passenger_data])
47
-
48
  if st.button("Calculate my chances of survival"):
49
-
50
  prediction = model.predict(passenger_data_df)[0]
51
  prediction_proba = model.predict_proba(passenger_data_df)[:,1][0]
52
 
@@ -62,8 +69,21 @@ if st.button("Calculate my chances of survival"):
62
 
63
  st.write(f"Probabilty of survival: {round(prediction_proba, 2)* 100}%.")
64
 
65
- passenger_data_df.insert(0, "date", str(datetime.now()))
66
- passenger_data_df["survived"] = prediction
67
- passenger_data_df["survival_prob"] = prediction_proba
 
 
 
 
 
 
 
 
 
 
 
68
 
69
- passenger_data_df.to_csv('model_log.csv', mode='a', header=False, index=False)
 
 
 
3
  from PIL import Image
4
 
5
  import pandas as pd
6
+ import random
7
  import streamlit as st
8
 
9
  model = load("model.joblib")
10
 
11
+ session = st.session_state
12
+
13
+ if 'df' not in session:
14
+ session.df = pd.read_csv("model_log.csv").drop_duplicates()
15
+
16
+ if 'user_id' not in session:
17
+ session.user_id = random.randint(1, 1_000_000)
18
+
19
  st.markdown('# Titanic Workshop - Would you be able to survive the Titanic disaster?')
20
  image = Image.open('titanic.jpeg')
21
  st.image(image)
 
52
  'Parch': parents,
53
  }
54
 
 
 
55
  if st.button("Calculate my chances of survival"):
56
+ passenger_data_df = pd.DataFrame.from_dict([passenger_data])
57
  prediction = model.predict(passenger_data_df)[0]
58
  prediction_proba = model.predict_proba(passenger_data_df)[:,1][0]
59
 
 
69
 
70
  st.write(f"Probabilty of survival: {round(prediction_proba, 2)* 100}%.")
71
 
72
+ passenger_data['user_id'] = session.user_id
73
+ passenger_data['date'] = str(datetime.now())
74
+ passenger_data["survived"] = prediction
75
+ passenger_data["survival_prob"] = prediction_proba
76
+
77
+ session.df = pd.concat(
78
+ [
79
+ session.df,
80
+ pd.DataFrame([passenger_data])
81
+ ],
82
+ ignore_index=True
83
+ )
84
+
85
+ session.df.drop_duplicates().to_csv('model_log.csv', mode="a", header=False, index=False)
86
 
87
+ session.df = pd.read_csv("model_log.csv")
88
+ session.df = session.df.drop_duplicates()
89
+ session.df.to_csv("model_log.csv", index=False)
model_log.csv CHANGED
@@ -1,2 +1 @@
1
- date,Age,is_male,Pclass_class 1,Pclass_class 2, Pclass_class 3, Embarked_C, Embarked_Q, Embarked_S, SibSp, Parch, survived, survival_prob,
2
-
 
1
+ Age,is_male,Pclass_class 1,Pclass_class 2,Pclass_class 3,Embarked_C,Embarked_Q,Embarked_S,SibSp,Parch,user_id,date,survived,survival_prob