Undersampling dữ liệu huấn luyện
Đến lúc bạn tự thực hiện undersampling trên tập huấn luyện bằng vài dòng mã Pandas. Khi undersampling xong, bạn có thể kiểm tra tần suất giá trị của loan_status để xác nhận kết quả.
X_y_train, count_nondefault, và count_default đã được nạp sẵn trong workspace. Chúng được tạo bằng đoạn mã sau:
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()
Kết quả .value_counts() cho dữ liệu huấn luyện gốc sẽ được in tự động.
Bài tập này là một phần của khóa học
Mô hình hóa Rủi ro Tín dụng bằng Python
Hướng dẫn bài tập
- Tạo hai tập dữ liệu non-default và default, lưu lần lượt vào
nondefaultsvàdefaults. - Lấy mẫu
nondefaultsxuống bằng vớicount_defaultvà lưu vàonondefaults_under. - Nối
nondefaultsvàdefaultsbằng.concat()và lưu vàoX_y_train_under. - In
.value_counts()của loan status cho tập dữ liệu mới.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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(____[____].____())