https://github.com/chandkund/predicting-student-grades
This project predicts student grades (G1, G2, G3) based on various features such as demographic information, study habits, family background, and other academic factors. The aim is to develop a predictive model that can assist in identifying students who may need additional support.
https://github.com/chandkund/predicting-student-grades
classification-algorithm ensemble-learning exploratory-data-analysis machine-learning matplotlib numpy pandas regression-models seaborn
Last synced: 3 months ago
JSON representation
This project predicts student grades (G1, G2, G3) based on various features such as demographic information, study habits, family background, and other academic factors. The aim is to develop a predictive model that can assist in identifying students who may need additional support.
- Host: GitHub
- URL: https://github.com/chandkund/predicting-student-grades
- Owner: chandkund
- License: mit
- Created: 2025-01-02T17:53:42.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-01-13T20:25:18.000Z (5 months ago)
- Last Synced: 2025-01-13T21:29:00.780Z (5 months ago)
- Topics: classification-algorithm, ensemble-learning, exploratory-data-analysis, machine-learning, matplotlib, numpy, pandas, regression-models, seaborn
- Language: Jupyter Notebook
- Homepage:
- Size: 1.03 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 🎓 Predicting Student Grades
## Overview
This project predicts student grades (G1, G2, G3) based on various features such as demographic information, study habits, family background, and other academic factors. The aim is to develop a predictive model that can assist in identifying students who may need additional support.
## Project Workflow
1. **Data Exploration**
- Analyzed the distribution and relationships between features like study time, family support, and internet access.
- Visualized the data to understand patterns and detect any anomalies.2. **Data Preprocessing**
- Cleaned and prepared the dataset by handling missing values and encoding categorical variables.
- Scaled numerical features to ensure optimal model performance.3. **Model Implementation**
- Built regression models to predict student grades (G1, G2, G3).
- Experimented with algorithms like Linear Regression, Random Forest Regressor, and Support Vector Machines.4. **Model Evaluation**
- Evaluated model performance using metrics such as Mean Squared Error (MSE) and R-squared.
- Selected the best model based on predictive accuracy for future student grade predictions.## Datasets
The dataset includes the following features:
- **school**: The school the student attends.
- **sex**: Gender of the student.
- **age**: Age of the student.
- **address**: Type of residential address.
- **famsize**: Family size.
- **Pstatus**: Parent's cohabitation status.
- **Medu**: Mother's education level.
- **Fedu**: Father's education level.
- **Mjob**: Mother's job.
- **Fjob**: Father's job.
- **reason**: Reason to choose the current school.
- **guardian**: Student's guardian.
- **traveltime**: Time taken to travel to school.
- **studytime**: Weekly study time.
- **failures**: Number of past class failures.
- **schoolsup**: Extra educational support.
- **famsup**: Family educational support.
- **paid**: Extra paid classes.
- **activities**: Extracurricular activities.
- **nursery**: Attended nursery school.
- **higher**: Wants to pursue higher education.
- **internet**: Internet access at home.
- **romantic**: Relationship status.
- **famrel**: Quality of family relationships.
- **freetime**: Free time after school.
- **goout**: Going out with friends.
- **Dalc**: Workday alcohol consumption.
- **Walc**: Weekend alcohol consumption.
- **health**: Current health status.
- **absences**: Number of school absences.## Target Columns
- **G1**: First period grade.
- **G2**: Second period grade.
- **G3**: Final grade.## Installation
1. **Clone the repository**:
```bash
git clone https://github.com/chandkund/Predicting Student Grades.git
```
2. **Navigate to the project directory**:
```bash
cd Predicting Student Grades
```
3. **Install required packages**:
```bash
pip install -r requirements.txt
```## Usage
Run the script to predict student grades:
```bash
python Predicting Student Grades.py
```## Results
The project successfully predicted student grades using various regression models. The best model provided accurate predictions of G1, G2, and G3, highlighting the importance of factors like study time, family support, and alcohol consumption.
## LICENSE
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.