Undersampling van trainingsdata
Tijd om zelf de trainingsset te undersamplen met een paar regels code uit Pandas. Zodra het undersamplen klaar is, kun je de value counts voor loan_status bekijken om de resultaten te controleren.
X_y_train, count_nondefault en count_default zijn al ingeladen in de werkruimte. Ze zijn gemaakt met de volgende code:
X_y_train = pd.concat([X_train.reset_index(drop = True),
y_train.reset_index(drop = True)], axis = 1)
count_nondefault, count_default = X_y_train['loan_status'].value_counts()
De .value_counts() voor de oorspronkelijke trainingsdata wordt automatisch geprint.
Deze oefening maakt deel uit van de cursus
Kredietrisicomodellering in Python
Oefeninstructies
- Maak gegevenssets van non-defaults en defaults en sla ze op als
nondefaultsendefaults. - Sample de
nondefaultsnaar hetzelfde aantal alscount_defaulten sla dit op alsnondefaults_under. - Concateneer
nondefaultsendefaultsmet.concat()en sla dit op alsX_y_train_under. - Print de
.value_counts()van de loan status voor de nieuwe gegevensset.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Create data sets for defaults and non-defaults
____ = ____[____[____] == 0]
____ = ____[____[____] == 1]
# Undersample the non-defaults
____ = nondefaults.sample(____)
# Concatenate the undersampled nondefaults with defaults
____ = pd.____([____.reset_index(drop = True),
____.reset_index(drop = True)], axis = 0)
# Print the value counts for loan status
print(____[____].____())