Ein Modell auf Test und Train auswerten
Die Funktion auc_train_test berechnet die AUC eines Modells, das auf einem train-Set erstellt und auf einem test-Set ausgewertet wird:
auc_train, auc_test = auc_train_test(variables, target, train, test)
wobei variables eine Liste der Namen der Variablen ist, die im Modell verwendet werden.
In dieser Übung wendest du diese Funktion an und prüfst, ob die Train- und Test-AUC ähnlich sind.
Diese Übung ist Teil des Kurses
Einführung in Predictive Analytics mit Python
Anleitung zur Übung
- Die
basetableist geladen. Teile die Basistabelle so auf, dass der Train-Set 70 % der Daten enthält, und stelle sicher, dass Train- und Test-Set die gleiche Zielinzidenz haben. - Berechne die Train- und Test-AUC des Modells mit
"age"und"gender_F"als Prädiktoren mithilfe der Funktionauc_train_test.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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 70-30 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)
# Apply the auc_train_test function
auc_train, auc_test = ____([____, ____], ["target"], ____, ____)
print(round(auc_train,2))
print(round(auc_test,2))