Skip to content

BroBay24/Student-Dropout-Prediction

Repository files navigation

Sistem Prediksi Dropout Mahasiswa

Aplikasi web berbasis Streamlit untuk memprediksi potensi dropout mahasiswa menggunakan Machine Learning (Random Forest).

🎯 Fitur

  • Prediksi Individu: Input data satu mahasiswa untuk prediksi real-time
  • Prediksi Batch: Upload CSV untuk prediksi massal
  • Visualisasi Hasil: Dashboard interaktif dengan metrik dan confidence score
  • Download Template: Template CSV untuk memudahkan input data batch
  • Informasi Model: Detail tentang model dan cara penggunaan

🚀 Cara Menjalankan

1. Install Dependencies

pip install -r requirements.txt

2. Pastikan Model Ada

Pastikan file model_rf.bin ada di folder yang sama dengan app.py

3. Jalankan Aplikasi

streamlit run app.py

Aplikasi akan terbuka di browser pada http://localhost:8501

📊 Input Data

Model membutuhkan data berikut:

Data Profil & Keuangan:

  • Usia saat mendaftar (15-80 tahun)
  • Status beasiswa (Ya/Tidak)
  • Status utang (Ya/Tidak)
  • Status pembayaran UKT (Lancar/Tidak Lancar)

Data Akademik Semester 1:

  • SKS yang diambil (0-24)
  • SKS yang lulus (0-24)
  • IPS - Indeks Prestasi Semester (0-20)

Data Akademik Semester 2:

  • SKS yang diambil (0-24)
  • SKS yang lulus (0-24)
  • IPS - Indeks Prestasi Semester (0-20)

📁 Struktur File

UasML2/
├── app.py                  # Aplikasi utama Streamlit
├── model_rf.bin           # Model Random Forest
├── requirements.txt       # Dependencies Python
└── README.md             # Dokumentasi

💡 Prediksi Batch

  1. Download template CSV dari aplikasi
  2. Isi data mahasiswa sesuai kolom:
    • usia: Usia saat mendaftar
    • beasiswa: 0 (Tidak) atau 1 (Ya)
    • utang: 0 (Tidak) atau 1 (Ya)
    • bayar_ukt: 0 (Tidak Lancar) atau 1 (Lancar)
    • sks1_enrolled: SKS diambil semester 1
    • sks1_approved: SKS lulus semester 1
    • nilai1: IPS semester 1
    • sks2_enrolled: SKS diambil semester 2
    • sks2_approved: SKS lulus semester 2
    • nilai2: IPS semester 2
  3. Upload file CSV ke aplikasi
  4. Download hasil prediksi

📈 Output

Model menghasilkan 3 kemungkinan status:

  • Dropout (0): Mahasiswa berpotensi dropout
  • Enrolled (1): Mahasiswa masih aktif
  • Graduate (2): Mahasiswa akan lulus

Setiap prediksi dilengkapi dengan:

  • Status prediksi
  • Confidence score (%)
  • Rekomendasi tindakan (jika diperlukan)

🔧 Troubleshooting

Model tidak ditemukan

  • Pastikan file model_rf.bin ada di folder yang sama dengan app.py

Error jumlah fitur

  • Model ini dirancang untuk dataset dengan struktur fitur standar
  • Jika terjadi error, sesuaikan mapping fitur di app.py sesuai dengan model Anda

Error saat prediksi batch

  • Pastikan format CSV sesuai dengan template
  • Periksa bahwa semua kolom yang diperlukan ada
  • Pastikan tidak ada nilai kosong (NaN)

📝 Catatan

  • Aplikasi ini menggunakan Random Forest Classifier
  • Model di-load dengan joblib
  • Skala nilai IPS: 0-20 (sesuaikan jika menggunakan skala 0-4)
  • Untuk akurasi terbaik, pastikan data input lengkap dan valid

👨‍💻 Screenshot

image image image image

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages