Exploratory data analysis of student dropout patterns using two real-world datasets. The goal was to identify which academic, demographic, and socioeconomic factors most strongly predict whether a student will graduate, drop out, or remain enrolled — and to turn those findings into actionable recommendations for institutional intervention.
Course: Data Visualization (PROG74010), Conestoga College, Winter 2026 Team: Girish Bhuteja · Rudra Patel · Dhyey Bhatt
Student dropout is a significant challenge for post-secondary institutions. Early detection of at-risk students allows institutions to intervene before a student reaches a point of no return. This project analyzes two real-world datasets to understand what that early warning signal actually looks like in the data.
The analysis covers:
- Data cleaning and missing value handling across two datasets
- Visual and statistical outlier detection using IQR
- Correlation analysis across academic, demographic, and economic variables
- Feature-by-feature comparison of student outcome groups (Graduate / Dropout / Enrolled)
- Evidence-based recommendations for early intervention
Two publicly available academic datasets were used. See data/README.md for download instructions.
| Dataset | Records | Source |
|---|---|---|
| UCI Student Dropout and Academic Success | 4,424 | UCI Machine Learning Repository |
| OULAD — Open University Learning Analytics Dataset (studentInfo) | ~32,000 | Open University, UK |
Dataset 1 captures demographics, first and second semester academic performance, financial situation, and external economic indicators (unemployment rate, GDP, inflation) for students at a higher education institution. The target variable classifies each student as Graduate, Dropout, or Enrolled.
Dataset 2 captures student demographics, study patterns, and final outcomes (Pass, Fail, Withdraw, Distinction) from the Open University's online learning platform.
Students who drop out show significantly lower first-semester grades than graduates — many near zero. This pattern is consistent across both semesters (r = 0.84 between semester 1 and semester 2 grades), meaning early performance patterns tend to persist throughout the program.
Admission grade shows only a weak positive correlation with semester performance (r = 0.07). A student's entry score alone is not a reliable indicator of whether they will graduate or drop out. All three outcome groups show substantial overlap in admission grade distributions.
Age at enrollment showed no meaningful difference between outcome groups — both traditional and mature students appear across all three categories. Economic variables (GDP, unemployment rate) were also weakly correlated with outcomes, suggesting that within this dataset, external economic conditions are not a primary driver of dropout.
The clearest separation between graduates and dropouts appears in first-semester grades — not in demographics or background variables. This makes first-semester performance an actionable, timely intervention trigger.
The notebook includes:
- Correlation heatmap across 6 continuous variables
- Boxplots: Admission Grade vs. Student Outcome
- Boxplots: 1st Semester Grade vs. Student Outcome
- Boxplots: 2nd Semester Grade vs. Student Outcome
- Boxplots: Age at Enrollment vs. Student Outcome
- IQR outlier analysis across all selected numerical features
Based on the findings, three institutional recommendations were proposed:
1. First-semester early warning system Flag students with first-semester grades significantly below the graduate median for proactive outreach — tutoring, advising, or peer mentoring — before the second semester begins.
2. Shift from admission-based to performance-based monitoring Since admission grades are weak predictors, institutions should invest more in in-program tracking systems rather than relying on entry criteria as a proxy for student success.
3. Prioritize resource allocation in semester 1 Because dropout risk crystallizes early, academic support resources (tutoring centers, advisor availability, financial aid awareness) should be weighted toward the first semester rather than distributed evenly across the program.
1. Clone the repository
git clone https://github.com/Girish0744/student-dropout-risk-analysis.git
cd student-dropout-risk-analysis2. Install dependencies
pip install -r requirements.txt3. Add the datasets
Follow the instructions in data/README.md to download and place the datasets in the data/ folder.
4. Launch the notebook
jupyter notebook Student_Dropout_Risk_Analysis.ipynbstudent-dropout-risk-analysis/
├── README.md
├── requirements.txt
├── Student_Dropout_Risk_Analysis.ipynb
└── data/
├── README.md
├── Dataset_1_Predict_Students_Dropout_and_Academic_Success.xlsx
└── studentInfo.csv
| Tool | Purpose |
|---|---|
| Python 3 | Core language |
| Pandas | Data loading, cleaning, transformation |
| Matplotlib | Base visualizations |
| Seaborn | Statistical visualizations (heatmap, boxplots) |
| Jupyter Notebook | Interactive analysis environment |
- The analysis is exploratory — no predictive model was built. Findings describe associations, not causal relationships.
- Dataset 1 is sourced from a single institution; results may not generalize to all post-secondary contexts.
- Outliers were retained throughout the analysis as they represent genuine real-world variation (mature students, high/low performers) rather than data errors.
Both datasets are publicly available for research and educational use. See each dataset's original license at the source links in data/README.md.