Aan de slagGa gratis aan de slag

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

Cursus bekijken

Oefeninstructies

  • Maak gegevenssets van non-defaults en defaults en sla ze op als nondefaults en defaults.
  • Sample de nondefaults naar hetzelfde aantal als count_default en sla dit op als nondefaults_under.
  • Concateneer nondefaults en defaults met .concat() en sla dit op als X_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(____[____].____())
Code bewerken en uitvoeren