Undersampling nos dados de treinamento
É hora de você mesmo fazer o undersampling do conjunto de treinamento com algumas linhas de código do Pandas. Quando terminar, confira as contagens de valores de loan_status para verificar os resultados.
X_y_train, count_nondefault e count_default já estão carregados no ambiente. Eles foram criados com o seguinte código:
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()
O .value_counts() dos dados originais de treinamento será impresso automaticamente.
Este exercício faz parte do curso
Modelagem de Risco de Crédito em Python
Instruções do exercício
- Crie conjuntos de dados de não inadimplentes e inadimplentes, armazenados como
nondefaultsedefaults. - Faça uma amostragem de
nondefaultspara o mesmo número decount_defaulte armazene comonondefaults_under. - Concatene
nondefaultsedefaultsusando.concat()e armazene comoX_y_train_under. - Imprima o
.value_counts()do status do empréstimo para o novo conjunto de dados.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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(____[____].____())