Bölümlendirme
Bir modeli doğru değerlendirmek için veriyi eğitim ve test kümelerine bölebilirsin. Eğitim kümesi, modelin üzerinde kurulduğu veriyi içerir; test kümesi ise modeli değerlendirmek için kullanılır. Bu bölme işlemi rastgele yapılır; ancak hedefin görülme oranı düşükse, eğitim ve test verilerinde hedef yüzdesinin eşit olmasını sağlamak için tabakalama (stratification) gerekebilir.
Bu egzersizde veriyi tabakalı biçimde bölecek ve eğitim ile test verilerinde hedef görülme oranının eşit olduğunu doğrulayacaksın. train_test_split yöntemi zaten içe aktarılmış durumda ve X ile y DataFrame'leri çalışma alanında mevcut.
Bu egzersiz, kursun bir parçasıdır
Python ile Öngörücü Analitiğe Giriş
Egzersiz talimatları
- Bu DataFrame'leri
train_test_splityöntemiyle tabakalı olarak böl. Eğitim ve test kümelerinin aynı boyutta ve hedef görülme oranlarının eşit olduğundan emin ol. - Eğitim kümesinin hedef görülme oranını hesapla. Bu, eğitim kümesindeki hedef sayısının eğitim kümesindeki gözlem sayısına bölünmesidir.
- Test kümesinin hedef görülme oranını hesapla.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Load the partitioning module
from sklearn.model_selection import train_test_split
# Create DataFrames with variables and target
X = basetable.drop("target", 1)
y = basetable["target"]
# Carry out 50-50 partititioning with stratification
X_train, X_test, y_train, y_test = ____(X, y, test_size = ____, stratify = ____)
# Create the final train and test basetables
train = pd.concat([X_train, y_train], axis=1)
test = pd.concat([X_test, y_test], axis=1)
# Check whether train and test have same percentage targets
print(round(sum(train[____])/len(____), 2))
print(round(sum(test[____])/len(____), 2))