Undersampling av träningsdata
Nu är det dags att undersampla träningsdatamängden själv med några rader kod från Pandas. När undersamplingen är klar kan du kontrollera värdenas antal för loan_status för att verifiera resultaten.
X_y_train, count_nondefault och count_default är redan inlästa i arbetsytan. De har skapats med följande kod:
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()
.value_counts() för den ursprungliga träningsdatan skrivs ut automatiskt.
Den här övningen är en del av kursen
Kreditriskmodellering i Python
Övningsinstruktioner
- Skapa datamängder med icke-defaults och defaults och lagra dem som
nondefaultsrespektivedefaults. - Sampla
nondefaultstill samma antal somcount_defaultoch lagra resultatet somnondefaults_under. - Konkatenera
nondefaultsochdefaultsmed.concat()och lagra det somX_y_train_under. - Skriv ut
.value_counts()för lånestatus i den nya datamängden.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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(____[____].____())