weewoo2636 commited on
Commit
45c8de4
1 Parent(s): 30452f4

Upload 6 files

Browse files
Files changed (2) hide show
  1. eda.py +3 -2
  2. prediction.py +62 -1
eda.py CHANGED
@@ -7,10 +7,11 @@ import matplotlib.pyplot as plt
7
  def app():
8
  st.title('Exploratory Data Analysis')
9
 
10
- df = pd.read_csv('deployment/eda_data.csv')
11
- st.write('Dataset Preview')
12
  st.write(df)
13
 
 
14
  st.write('How is the percentage of default payment as education level increases?')
15
  vis_1(df)
16
 
 
7
  def app():
8
  st.title('Exploratory Data Analysis')
9
 
10
+ df = pd.read_csv('eda_data.csv')
11
+ st.subheader('Dataset Preview')
12
  st.write(df)
13
 
14
+ st.subheader('Data Analysis Questions')
15
  st.write('How is the percentage of default payment as education level increases?')
16
  vis_1(df)
17
 
prediction.py CHANGED
@@ -2,6 +2,67 @@
2
  import streamlit as st
3
  import numpy as np
4
  import pandas as pd
 
5
 
6
  def app():
7
- st.title('Prediction for Default Payment on the Next Month')
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  import streamlit as st
3
  import numpy as np
4
  import pandas as pd
5
+ import joblib
6
 
7
  def app():
8
+ st.title('Prediction for Default Payment on the Next Month')
9
+
10
+ df = pd.read_csv('eda_data.csv')
11
+ st.subheader('Dataset Preview')
12
+ st.write(df)
13
+
14
+ st.subheader('Input Data')
15
+ input = user_input(df)
16
+
17
+ st.subheader('User Input')
18
+ st.write(input)
19
+
20
+ load_model = joblib.load("model.pkl")
21
+
22
+ prediction = load_model.predict(input)
23
+
24
+ if prediction == 1:
25
+ prediction = 'Payment Defaulted (1)'
26
+ else:
27
+ prediction = 'Payment Not Defaulted (0)'
28
+
29
+ st.subheader('Prediction Result:')
30
+ st.write('Based on user input, the model predicted: ')
31
+ st.write(prediction)
32
+
33
+ def user_input(df):
34
+ limit_balance = st.number_input('limit_balance', value=0.0)
35
+ education_level = st.selectbox('education_level', df['education_level'].unique())
36
+ pay_1 = st.selectbox('pay_1', [i for i in range(-1, 13)])
37
+ pay_2 = st.selectbox('pay_2', [i for i in range(-1, 13)])
38
+ pay_3 = st.selectbox('pay_3', [i for i in range(-1, 13)])
39
+ pay_4 = st.selectbox('pay_4', [i for i in range(-1, 13)])
40
+ pay_5 = st.selectbox('pay_5', [i for i in range(-1, 13)])
41
+ pay_6 = st.selectbox('pay_6', [i for i in range(-1, 13)])
42
+ pay_amt_1 = st.number_input('pay_amt_1', value=0.0)
43
+ pay_amt_2 = st.number_input('pay_amt_2', value=0.0)
44
+ pay_amt_3 = st.number_input('pay_amt_3', value=0.0)
45
+ pay_amt_4 = st.number_input('pay_amt_4', value=0.0)
46
+ pay_amt_5 = st.number_input('pay_amt_5', value=0.0)
47
+ pay_amt_6 = st.number_input('pay_amt_6', value=0.0)
48
+
49
+ data = {
50
+ 'limit_balance' : limit_balance,
51
+ 'education_level' : education_level,
52
+ 'pay_1' : pay_1,
53
+ 'pay_2' : pay_2,
54
+ 'pay_3': pay_3,
55
+ 'pay_4' : pay_4,
56
+ 'pay_5' : pay_5,
57
+ 'pay_6' : pay_6,
58
+ 'pay_amt_1' : pay_amt_1,
59
+ 'pay_amt_2' : pay_amt_2,
60
+ 'pay_amt_3' : pay_amt_3,
61
+ 'pay_amt_4' : pay_amt_4,
62
+ 'pay_amt_5' : pay_amt_5,
63
+ 'pay_amt_6' : pay_amt_6
64
+ }
65
+ features = pd.DataFrame(data, index=[0])
66
+ return features
67
+
68
+