Aan de slagBegin gratis

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

Bekijk cursus

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.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan 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