Spaces:
Sleeping
Sleeping
import streamlit as st | |
import pandas as pd | |
import pickle | |
def run(): | |
st.title('Model Prediksi') | |
with st.expander("Petunjuk Penggunaan Prediksi"): | |
st.caption( | |
""" | |
Korelasi antara berbagai parameter kesehatan dengan DEATH_EVENT (kematian akibat penyakit jantung) dapat memberikan wawasan tentang faktor-faktor yang mempengaruhi prognosis pasien dengan penyakit jantung. Berikut adalah kemungkinan korelasi yang kuat antara parameter yang Anda sebutkan dengan DEATH_EVENT: | |
1. Time : Periode tindak lanjut (dalam hari), | |
Lama perawatan untuk penyakit jantung koroner (PJK) bisa menjadi salah satu faktor yang mempengaruhi bertahan hidup pasien, namun, perlu diingat bahwa hal ini sangat kompleks dan dipengaruhi oleh banyak faktor lainnya. | |
-(untuk prediksi, silakan isikan hari perawatan angka 1-365) | |
2. Serum Creatinine: Serum creatinine (tingkat kreatinin dalam darah, yang mencerminkan fungsi ginjal) kemungkinan memiliki korelasi positif yang kuat dengan DEATH_EVENT. Tingkat serum creatinine yang tinggi dapat menunjukkan gangguan fungsi ginjal yang berpotensi mempengaruhi prognosis. | |
- Kreatinin Maksimum (Normal): | |
- Pria: Di bawah 1.2 mg/dL | |
- Wanita: Di bawah 1.0 mg/dL | |
-Note : Kadar kreatinin yang tinggi dapat menjadi indikator adanya gangguan ginjal atau gangguan fungsi ginjal lainnya. | |
-(untuk prediksi, silakan masukan angka 0-10) | |
3. Ejection Fraction: Ejection fraction (persentase darah yang dipompa oleh jantung setiap kali berdetak) kemungkinan memiliki korelasi negatif yang kuat dengan DEATH_EVENT. Semakin rendah ejection fraction, semakin tinggi risiko kematian. | |
Ejection fraction (EF) adalah ukuran yang menggambarkan seberapa efisien jantung memompa darah dari bilik sisi kiri ke arteri selama setiap kontraksi. Normalnya, ejection fraction diukur dalam persentase (%) | |
- Pada beberapa kondisi seperti gagal jantung, penyakit jantung koroner, atau infark miokard, ejection fraction dapat menurun di bawah nilai normal. Pada tingkat yang ekstrem, ejection fraction bisa mendekati 0%. | |
- Di bawah 30% sering dianggap sebagai tanda disfungsi ventrikel kiri atau gangguan jantung. | |
- Normal: 50-70% adalah kisaran normal untuk ejection fraction. Ini berarti bahwa sekitar setengah hingga lebih dari setengah dari volume darah di ventrikel kiri dipompa keluar setiap kali jantung berkontraksi. | |
-(untuk prediksi, silakan masukan angka 10-100) | |
""") | |
# Load All Files | |
with open('best_linear_svm_model.pkl', 'rb') as file: | |
full_process = pickle.load(file) | |
time_input = st.number_input(label='Silakan Masukan Periode Perawatan', min_value=0.0, max_value=365.0) | |
serum_creatinine_input = st.number_input(label='Silakan Masukan tingkat kreatinin dalam darah', min_value=0.0, max_value=10.0) | |
ejection_fraction_input = st.number_input(label='Silakan Masukan Ejection Fraction', min_value=10.0, max_value=100.0) | |
st.write('Data yang Anda sampaikan adalah: ') | |
data_inf = pd.DataFrame({ | |
'time': time_input, | |
'serum_creatinine': serum_creatinine_input, | |
'ejection_fraction': ejection_fraction_input, | |
}, index=[1]) | |
st.table(data_inf) | |
if st.button(label='predict'): | |
# Melakukan prediksi data dummy | |
y_pred_inf = full_process.predict(data_inf) | |
st.metric(label="Prediksinya adalah:", value=y_pred_inf[0]) | |
st.write('0 Prediksi Hidup, 1 Prediksi Meninggal Dunia') | |
run() # Call the run function |