P1G3_Hilal / EDA.py
hilalrd's picture
Update EDA.py
b213156
raw
history blame
2.64 kB
import streamlit as st
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import plotly.express as px
st.set_page_config(
page_title = 'HEART FAILURE - EDA',
layout = 'wide',
initial_sidebar_state = 'expanded'
)
def run():
# Membuat fila
st.title('Heart Failure Prediction')
# Membaut subheader
st.subheader('EDA untuk Analisis Dataset Heart Failure')
# Menambahkan deskripsi
st.write('**Gagal jantung** adalah kondisi serius yang dapat mempengaruhi kualitas hidup seseorang dan dapat berujung pada risiko kematian. Namun, dengan kemajuan dalam ilmu medis dan teknologi, telah ada upaya untuk memprediksi apakah seseorang dengan gagal jantung akan menghadapi risiko kematian atau tidak. Penelitian-penelitian ini bertujuan untuk memberikan wawasan yang lebih baik tentang prognosis individu dan membantu dalam pengambilan keputusan pengobatan yang lebih tepat.')
# Membuat garis lurus
st.markdown('---')
# Magic Syntax
'''
Pada page kali ini, penulis akan melakukan eksplorasi sederhana.
Dataset yang digunakan adalah dataset heart-failure.
Dataset ini berasal dari BigQuery Public Data
'''
# Show DataFrame
data = pd.read_csv('https://raw.githubusercontent.com/hilalrd/latihan_b19/master/h8dsft_P1G3_Hilal_Amirudin.csv')
st.dataframe(data)
# Membuat Barplot
st.write('#### Plot Ejection fraction')
fig = plt.figure(figsize=(15, 5))
sns.countplot(x='ejection_fraction', data=data)
st.pyplot(fig)
# Membuat Histogram
st.write('#### Histogram of Serum Creatine')
fig = plt.figure(figsize=(15, 5))
sns.histplot(data['serum_creatinine'], bins=30, kde=True)
st.pyplot(fig)
# Membuat Histogram
st.write('#### Histogram of Serum Sodium')
fig = plt.figure(figsize=(15, 5))
sns.histplot(data['serum_sodium'], bins=30, kde=True)
st.pyplot(fig)
# Membuat Histogram
st.write('#### Histogram of age')
fig = plt.figure(figsize=(15, 5))
sns.histplot(data['age'], bins=30, kde=True)
st.pyplot(fig)
# Membuat Histogram berdasarkan Input user
st.write('#### Histogram berdasarkan input user')
pilihan = st.selectbox('Pilih column : ', ('age', 'creatinine_phosphokinase', 'ejection_fraction', 'platelets', 'serum_sodium', 'time'))
fig = plt.figure(figsize=(15, 5))
sns.histplot(data[pilihan], bins=30, kde=True)
st.pyplot(fig)
# Membuat Plotly plot
st.write('#### Plotly Plot - Smoking dengan Time')
fig = px.scatter(data, x='ejection_fraction', y='time')
st.plotly_chart(fig)
if __name__== '__main__':
run()