Clinical ML · 28 JAN 2025

Early Detection of Kidney Disease

An end-to-end machine-learning comparison built on the Chronic Kidney Disease dataset, evaluating how four preprocessing strategies affect eight classification algorithms.

Pandas / SMOTE / PCA / XGBoost
PROJECT VISUAL / VERIFIED
TL;DR / KEY SIGNALS
01

Four dataset variants covering deletion, imputation, feature selection, PCA, and SMOTE

02

Eight classifiers tuned with GridSearchCV and cross-validation

03

Automated accuracy, precision, recall, F1, AUC, confusion matrix, and curve reports

01

From raw clinical data

The original ARFF data is repaired by removing malformed separators, converting question marks into missing values, and loading the records into pandas. Numeric and categorical variables are inspected separately to select suitable cleaning strategies.

02

Four preprocessing strategies

Rather than testing a single cleaned dataset, the project creates four versions so the effect of preprocessing can be measured.

  • Complete-case dataset with rows containing missing values removed.
  • Median imputation for numeric variables and mode imputation for categorical variables.
  • Removal of columns with more than 30% missing data before imputation and encoding.
  • Dimensionality reduction with PCA and class balancing with SMOTE.
03

Eight decision models

k-NN, Decision Tree, Random Forest, Gradient Boosting, logistic regression, SVM, Multilayer Perceptron, and XGBoost are trained across the prepared datasets.

GridSearchCV and cross-validation tune each model. The resulting reports compare accuracy, precision, recall, F1-score, and AUC while automatically exporting confusion matrices, ROC curves, and precision-recall curves.

  • Model selection based on generalization, not a single headline metric
  • Organized report and plot generation for reproducible comparison
FULL DOCUMENTATION

Go deeper into the complete project.

Open the original associated PDF for the full methodology, code, analysis, and project evidence.

Open detailed PDF