Skip to content

This project focuses on identifying signs of depression in students through the analysis of survey data using machine learning techniques. With rising academic pressures, social challenges, and mental health issues among students, early detection of depression is crucial for timely intervention and support.

Notifications You must be signed in to change notification settings

Pujakurde/Student-Depression-Analysis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ Student Depression Analysis using Machine Learning

πŸ“˜ Overview

This project focuses on analyzing and predicting depression among students using machine learning. By evaluating various factors such as academic performance, lifestyle, and social behavior, the model aims to identify students who may be at risk of depression, promoting early intervention and mental well-being.


🎯 Objective

  • Predict depression levels in students (e.g., low, moderate, high)
  • Identify key factors influencing student mental health
  • Create visual insights for understanding trends and patterns
  • Promote awareness and data-driven support strategies

πŸ—‚οΈ Dataset

The dataset includes anonymized information such as:

  • πŸ“š Academic performance
  • πŸ’€ Sleep habits
  • πŸ‘₯ Social activities
  • 🏑 Family background
  • 🧠 Mental health survey responses
  • πŸƒ Lifestyle choices

Note: Dataset is either self-collected via Google Forms or sourced from open repositories like Kaggle.


🧠 Machine Learning Workflow

  1. Data Preprocessing

    • Handling missing values
    • Label encoding & normalization
  2. Exploratory Data Analysis (EDA)

    • Correlation matrix
    • Distribution plots
    • Feature importance
  3. Model Building

    • Logistic Regression
    • Random Forest
    • Support Vector Machine
    • Naive Bayes
  4. Model Evaluation

    • Accuracy
    • Precision & Recall
    • F1 Score
    • Confusion Matrix

πŸ“Š Tools & Technologies

  • Python 🐍
  • Pandas, NumPy
  • Scikit-learn
  • Matplotlib, Seaborn
  • Jupyter Notebook

πŸ“ˆ Visualizations

  • Depression distribution by gender, age, sleep, study hours, etc.
  • Heatmaps to find correlations
  • Bar charts to visualize classification results

Plots are included in the notebook to explain patterns and model outputs.


βœ… Results

  • Achieved 82.83% accuracy using Random Forest
  • Identified strong predictors like sleep hours, exam pressure, and screen time
  • Provided actionable insights for early intervention

πŸ“‚ Project Structure

Student-Depression-Analysis/ β”‚ β”œβ”€β”€ dataset/ # CSV file or data source β”œβ”€β”€ notebooks/ # Jupyter Notebooks for EDA & modeling β”œβ”€β”€ models/ # Saved model files (optional) β”œβ”€β”€ images/ # Visualization outputs β”œβ”€β”€ README.md # Project overview └── requirements.txt # Python dependencies

πŸ’¬ Future Work

  • Deploy the model as a web app using Streamlit or Flask
  • Collect real-time data from institutions
  • Expand features: include social media behavior & anxiety indicators

🀝 Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

πŸ™ Acknowledgements

  • Mental Health Awareness groups
  • Public datasets and survey participants
  • Tools and resources from the open-source community

About

This project focuses on identifying signs of depression in students through the analysis of survey data using machine learning techniques. With rising academic pressures, social challenges, and mental health issues among students, early detection of depression is crucial for timely intervention and support.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published