BACK_TO_LOGS// STEP_4_OF_10
HANDBOOK_GUIDE2026-06-28

Credit Card Approval Prediction: End-to-End Machine Learning Guide

By Rayan Syed
40 min read

Part 4: Downloading the Dataset

4. The Kaggle Dataset

For this project, we utilize the official Credit Card Approval Prediction Dataset on Kaggle.

This dataset is split into two CSV files:

  • application_record.csv: Contains applicant details (income, education, property ownership, age, family size).
  • credit_record.csv: Contains the payment history of those applicants over past months.

4.1 Dataset Columns Explained

The raw fields inside application_record.csv are grouped into these logical sections:

  • Identification Variable:
    • ID: Unique identification number for each applicant.
  • Applicant Demographics:
    • CODE_GENDER: Gender (M = Male, F = Female).
    • CNT_CHILDREN: Number of children.
    • CNT_FAM_MEMBERS: Family size.
    • NAME_FAMILY_STATUS: Family status (Married, Single, Civil marriage, Separated, Widow).
  • Financial Details:
    • AMT_INCOME_TOTAL: Total annual income.
    • FLAG_OWN_CAR: Car ownership status (Y = Yes, N = No).
    • FLAG_OWN_REALTY: Property/Real Estate ownership (Y = Yes, N = No).
    • NAME_INCOME_TYPE: Type of income (Working, Commercial associate, Pensioner, State servant, Student).
  • Living & Education:
    • NAME_EDUCATION_TYPE: Highest level of education achieved.
    • NAME_HOUSING_TYPE: Way of living (House/apartment, With parents, Rented apartment, etc.).
  • Employment & Time Offsets:
    • DAYS_BIRTH: Applicant age in days (represented as a negative offset from today).
    • DAYS_EMPLOYED: Employment duration in days (negative offset; positive values indicate unemployment).
    • OCCUPATION_TYPE: Type of job/occupation.

4.2 Label Construction Strategy

The raw dataset does not contain an “Approved” or “Rejected” label column. We must engineer it. We define an applicant’s target state based on their payment delays in credit_record.csv:

  • STATUS (Monthly Payment Code):
    • 0: 1-29 days past due.
    • 1: 30-59 days past due.
    • 2: 60-89 days past due.
    • 3: 90-119 days past due.
    • 4: 120-149 days past due.
    • 5: Overdue or bad debts, write-offs for more than 150 days.
    • C: Paid off that month.
    • X: No loan for the month.
  • Target Calculation Logic:
    • If an applicant has had payments overdue by 60 or more days (represented by status codes 2, 3, 4, or 5 in the monthly log) at any point in their record, we label them as Risky/Rejected (Target = 1).
    • Otherwise, they are labeled Safe/Approved (Target = 0).