Pengambilan sampel berstrata
Sekarang Anda mengetahui bahwa distribusi label kelas pada kolom category_desc di himpunan data volunteer tidak seimbang. Jika Anda ingin melatih model untuk memprediksi category_desc, Anda harus memastikan bahwa model dilatih pada sampel data yang mewakili seluruh himpunan data. Pengambilan sampel berstrata adalah salah satu cara untuk mencapainya!
Latihan ini adalah bagian dari kursus
Prapemrosesan untuk Machine Learning di Python
Petunjuk latihan
- Buat DataFrame fitur,
X, dengan semua kolom kecualicategory_desc. - Buat DataFrame label,
y, dari kolomcategory_desc. - Bagi
Xdanymenjadi himpunan latih dan uji, dengan memastikan distribusi kelas pada label sama pada kedua himpunan tersebut - Cetak label dan jumlahnya di
y_trainmenggunakan.value_counts().
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Create a DataFrame with all columns except category_desc
X = volunteer.____(____, axis=____)
# Create a category_desc labels dataset
y = ____[[____]]
# Use stratified sampling to split up the dataset according to the y dataset
X_train, X_test, y_train, y_test = ____(____, ____, ____, random_state=42)
# Print the category_desc counts from y_train
print(____[____].____)