All projects
Classification

Appointment No-Show Prediction

Missed appointments cost healthcare systems millions annually and leave appointment slots unfilled, reducing access for other patients. This project aimed to identify which patients were most likely to miss their appointments.

78% recall on no-show predictions
2025
PythonPandasScikit-learnPower BI

Dataset

Kaggle: No-Show Appointments

View source

Key Questions

  • Which patient demographics are most predictive of no-shows?
  • Does the day of the week or lead time between scheduling and appointment affect attendance?
  • Can we build a model that reliably identifies high-risk patients for targeted interventions?

Methods

  • Exploratory data analysis of 110k+ appointment records
  • Feature engineering: lead time, day of week, neighbourhood risk scores
  • Logistic regression and random forest classifiers
  • Hyperparameter tuning with cross-validation
  • Precision-recall trade-off analysis for operational thresholds

Results

The random forest model achieved 78% recall on no-shows with 65% precision. Key predictors included lead time (appointments booked 20+ days in advance had 3x higher no-show rates), SMS reminder status, and patient age group.

No-Show Rate by Lead Time (Days)

Recommendations

  • Target SMS reminders to patients with appointments booked more than 14 days in advance
  • Implement overbooking strategies for high-risk time slots (Monday mornings, Friday afternoons)
  • Consider same-day confirmation calls for the top 10% highest-risk appointments
  • Track intervention effectiveness monthly to refine the model over time

Limitations

The dataset is from a single Brazilian healthcare system, so findings may not generalise directly to NHS or other settings. Socioeconomic factors like transport access were not available. The model should be monitored for bias across demographic groups.