""" Graded Challenge 5 Nama: Qothrunnadaa Alyaa Batch: HCK-009 File digunakan untuk menjalankan page EDA dari model prediksi default nasabah kartu kredit """ import streamlit as st import pandas as pd import numpy as np from PIL import Image # Membuat function untuk dipanggil pada app.py def run(): st.title('Exploratory Data Analysis') st.write('Laman ini berisi eksplorasi data dari dataset Credit Card Default di Taiwan pada April - September 2005. Dataset ini akan digunakan untuk memprediksi apakah seorang nasabah akan gagal membayar tagihan kartu kreditnya pada bulan Oktober 2005.') # Load csv dataset df = pd.read_csv('P1G5_Set_1_qothrunnadaa_alyaa.csv') # Dataset yang digunakan st.header('Dataset Credit Card Default in Taiwan (Apr - Sep 2005)') st.table(df.head(10)) # Menampilkan korelasi kolom numerik st.header('Numeric Columns Correlation (Pearson)') num_corr = Image.open('num_corr.png') st.image(num_corr, caption='Numeric Columns Correlation') # Penjelasan dari korelasi kolom numerik with st.expander('Explanation'): st.caption('Korelasi dari kolom numerik yang digunakan dalam model prediksi menunjukkan bahwa limit dari kartu kredit nasabah (limit balance) lebih berkorelasi dengan kemungkinan nasabah tersebut default dibandingkan dengan nominal yang dibayarkan nasabah setiap bulannya (pay_amt_4 - pay_amt_9).') # Menampilkan korelasi kolom kategorikal st.header('Categorical Columns Correlation (Phi K)') cat_corr = Image.open('cat_corr.png') st.image(cat_corr, caption='Categorical Columns Correlation') # Penjelasan dari korelasi kolom kategorikal with st.expander('Explanation'): st.caption('Korelasi dari kolom kategorikal yang digunakan dalam model prediksi ini menunjukkan bahwa status pembayaran nasabah setiap bulannya, apakah nasabah tersebut sudah membayar atau terlambat membayar, lebih berpengaruh dibandingkan pendidikan terakhir nasabah dalam menentukan apakah nasabah tersebut akan mengalami default atau tidak.') # Menampilkan nasabah yang default berdasarkan pendidikan terakhir st.header('Default by Education Level') edu_def = Image.open('edu_level_stack_barchart.png') st.image(edu_def, caption='Default by Education Level (Stacked Bar)') # Penjelasan bar chart nasabah yang default berdasarkan pendidikan terakhir with st.expander('Explanation'): st.caption('Nasabah yang paling banyak mengalami default merupakan lulusan S1, diikuti dengan lulusan SMA, lulusan S2, dan terakhir selain lulusan ketiga jenjang pendidikan tersebut.')