Naruszenie osi czasu
Aby pokazać, jak ważna jest oś czasu, przyjrzyjmy się przykładowi, w którym ją naruszamy – czyli wykorzystujemy informacje z okresu docelowego do budowy zmiennych predykcyjnych.
Dataframe basetable zawiera dwie kolumny: "amount_2017" to łączna kwota darowizn w 2017 roku, a "target" przyjmuje wartość 1, jeśli ta kwota przekracza 30, lub 0 w przeciwnym razie.
Zbuduj model regresji logistycznej, który używa kolumny "amount_2017" jako jedynej zmiennej predykcyjnej do przewidywania wartości docelowej, a następnie oblicz AUC.
To ćwiczenie jest częścią kursu
Pośrednia analityka predykcyjna w Pythonie
Instrukcje do ćwiczenia
- Utwórz dataframe
Xzawierający zmienną predykcyjną oraz dataframeyzawierający zmienną docelową. - Dopasuj model regresji logistycznej tak, aby
ybyło przewidywane na podstawieX. Zbuduj model regresji logistycznej, który używaamount_2017jako jedynej zmiennej predykcyjnej do przewidywaniatarget. - Dokonaj predykcji dla obiektów z
X. - Oblicz i wyświetl AUC tego modelu, korzystając z funkcji
roc_auc_score.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Select the relevant predictors and the target
X = basetable[["____"]]
y = basetable[["____"]]
# Build the logistic regression model
logreg = linear_model.LogisticRegression()
logreg.____(____, ____)
# Make predictions for X
predictions = logreg.____(____)[:,1]
# Calculate and print the AUC value
auc = ____(____, ____)
print(round(auc, 2))