Spaces:
Sleeping
Sleeping
import streamlit as st | |
import pandas as pd | |
import seaborn as sns | |
import matplotlib.pyplot as plt | |
import plotly.express as px | |
def run(): | |
#Membuat title | |
st.title('Credit Default Predictor - Exploratory Data Analysis') | |
#Membuat subheader | |
st.subheader('Exploratory Data Analysis of the model Credit Default Predictor') | |
#Membuat garis | |
st.markdown('----') | |
#Masukkan pandas dataframe | |
#Show dataframe | |
df = pd.read_csv('https://raw.githubusercontent.com/AdeWT/AdeWT-Hacktiv8-things/main/BigQuery_credit_card_default_27_12_2023.csv') | |
st.dataframe(df) | |
#Membuat bar plot | |
st.write('### Spread of default and non-default in the dataset') | |
fig = plt.figure(figsize=(15,5)) | |
sns.countplot(x='default_payment_next_month', data = df) | |
st.pyplot(fig) | |
#Membuat histogram | |
st.write('### Distribution plot of limit balance') | |
fig = plt.figure(figsize=(15,5)) | |
sns.histplot(df['limit_balance'], bins = 30, kde = True) | |
st.pyplot(fig) | |
#tambah penjelas | |
#membuat histogram berdasarkan inputan user | |
st.write('### Choose which data to see spread of') | |
option = st.selectbox('Choose data : ', ('sex', 'education_level', 'marital_status')) | |
fig = plt.figure(figsize= (15,5)) | |
sns.countplot(x=option, data=df) | |
st.pyplot(fig) | |
st.write(f'#### sex = 1 is male, 2 is female') | |
st.write('#### education_level =') | |
st.write('#### 1 is graduate school') | |
st.write('#### 2 is university') | |
st.write('#### 3 is high school') | |
st.write('#### 4 is others') | |
st.write('#### 5 and 6 are unknown') | |
st.write('#### marital_status =') | |
st.write('#### 1 is married') | |
st.write('#### 2 is single') | |
st.write('#### 3 is others') | |
#Membuat Plotly plot | |
st.write('### Plotly Plot - Education Level on Default Payment Next Month') | |
fig = px.scatter(df, x = 'education_level', y = 'default_payment_next_month', hover_data = ['limit_balance', | |
'education_level', | |
'marital_status', | |
'age']) | |
st.plotly_chart(fig) | |
st.write('#### 1 is default while 0 is no default') | |
if __name__ == '__main__': | |
run() |