1.
Introduction
Data Science is an interdisciplinary field that combines statistics, machine learning, and data
analysis techniques to extract useful knowledge from data. With the rapid growth of digital
technologies, large amounts of data are generated in various fields such as healthcare, business,
education, and industry. Data Science techniques help analyze this data and support decision-
making processes.
In the education sector, analyzing student data is very important for improving academic
performance. Educational institutions collect large amounts of data such as attendance records,
internal assessment marks, and examination results. This data can be used to understand student
learning patterns and predict academic outcomes. Traditional methods of evaluating student
performance rely on manual analysis, which is time-consuming and less accurate.
Student performance prediction is one of the important applications of Data Science and
Machine Learning. By analyzing student-related factors such as study hours, attendance
percentage, and internal assessment marks, it is possible to predict the final exam performance
of students. Early prediction of student performance helps teachers identify weak students and
provide additional support to improve their results.
Machine learning algorithms play a significant role in predicting student performance. These
algorithms learn patterns from historical student data and use these patterns to make predictions.
In this project, machine learning techniques are applied to analyze student academic data and
predict final examination marks.
This project focuses on developing a Student Performance Prediction system using Data Science
techniques. The system uses a dataset containing student information such as study hours,
attendance percentage, and internal assessment marks. A machine learning algorithm, namely
Linear Regression, is used to build the prediction model.
The proposed system helps educational institutions in monitoring student performance and
making data-driven decisions. The results obtained from the model show that student marks can
be predicted with good accuracy using machine learning techniques.
This project demonstrates how Data Science can be effectively applied in the education domain
to improve academic performance and support intelligent decision-making.
Data Science-based prediction system Page 1
2. Problem Statement
In educational institutions, evaluating student academic performance is an important task.
Teachers and administrators need to monitor student progress regularly in order to identify
students who require additional academic support. However, traditional methods of analyzing
student performance are mostly manual and time-consuming. These methods do not always
provide accurate predictions about student outcomes.
Many factors influence student academic performance such as study hours, attendance
percentage, and internal assessment marks. Analyzing these factors manually is difficult when
the number of students is large. Therefore, there is a need for an automated system that can
analyze student data and predict academic performance efficiently.
The main problem addressed in this project is to develop a Data Science-based prediction
system that can estimate student final examination marks using machine learning techniques.
The system uses student academic data such as:
Study Hours
Attendance Percentage
Internal Assessment Marks
Using this data, a machine learning model is developed to predict the final examination marks
of students with good accuracy.
The proposed system helps educational institutions:
Identify weak students early
Improve student performance
Make data-driven decisions
Reduce manual analysis
Thus, this project focuses on designing and implementing a Student Performance Prediction
system using Data Science techniques to improve academic performance evaluation.
Data Science-based prediction system Page 2
3. Dataset Description
The dataset used in this project contains academic information about students. The dataset is
used to analyze student learning behavior and predict final examination marks using machine
learning techniques.
The dataset consists of numerical values representing different factors that influence student
academic performance. The data can be collected from student academic records or created as a
sample dataset for experimental purposes.
The dataset includes important attributes such as study hours, attendance percentage, internal
assessment marks, and final examination marks. These attributes are selected because they
directly affect student academic performance.
Dataset Attributes
The dataset contains the following attributes:
Attribute Name Description Type
Study Hours Number of hours studied per day by the student Numeric
Attendance Percentage of attendance in classes Numeric
Internal Marks Marks obtained in internal assessments Numeric
Final Marks Marks obtained in final examination Numeric
Input Variables
The input variables (independent variables) are:
Study Hours
Attendance Percentage
Internal Marks
Output Variable
The output variable (dependent variable) is:
Final Examination Marks
Sample Dataset
Student ID Study Hours Attendance (%) Internal Marks Final Marks
S1 2 60 15 40
S2 3 65 18 45
S3 4 70 20 50
S4 5 75 22 60
Data Science-based prediction system Page 3
Student ID Study Hours Attendance (%) Internal Marks Final Marks
S5 6 80 25 65
S6 7 85 27 70
S7 8 88 28 75
S8 9 90 29 80
S9 10 92 30 90
S10 6 78 24 68
Dataset Characteristics
The characteristics of the dataset are:
Structured dataset
Small dataset (sample dataset)
Numerical data
Supervised learning dataset
Suitable for regression analysis
Data Collection Method
The dataset used in this project is obtained by:
Collecting academic records of students
or
Creating a sample dataset for experimental analysis
The dataset is prepared in a structured format using spreadsheet or CSV files.
Data Preprocessing
Before applying machine learning algorithms, the dataset is preprocessed.
The preprocessing steps include:
Removing missing values
Removing duplicate records
Checking data consistency
Formatting numerical values
Dataset Split
The dataset is divided into two parts:
Data Science-based prediction system Page 4
Training Dataset – 80%
Testing Dataset – 20%
The training dataset is used to train the machine learning model, while the testing dataset is used
to evaluate the model performance.
Data Science-based prediction system Page 5
4. Methodology
The methodology describes the steps followed to develop the Student Performance Prediction
System using Data Science techniques. The project follows a standard Data Science workflow
that includes data collection, preprocessing, model building, and evaluation.
The methodology consists of the following steps:
4.1 Data Collection
The first step in the project is data collection. The dataset contains student academic information
such as:
Study Hours
Attendance Percentage
Internal Marks
Final Marks
The dataset is collected from student academic records or prepared as a sample dataset for
experimental purposes.
The collected data is stored in a structured format such as a CSV file or Excel sheet.
4.2 Data Preprocessing
Data preprocessing is an important step before applying machine learning algorithms. Raw data
may contain missing values or inconsistent data, which can affect prediction accuracy.
The preprocessing steps include:
Removing missing values
Removing duplicate records
Data cleaning
Formatting data
Converting data into numerical format
After preprocessing, the dataset becomes suitable for machine learning analysis.
4.3 Feature Selection
Feature selection involves selecting important variables that influence student performance.
The selected features are:
Study Hours
Data Science-based prediction system Page 6
Attendance Percentage
Internal Marks
These features are used as input variables for the prediction model.
Output variable:
Final Marks
4.4 Dataset Splitting
The dataset is divided into two parts:
Training Dataset (80%)
Testing Dataset (20%)
The training dataset is used to train the machine learning model, and the testing dataset is used to
evaluate the model performance.
4.5 Model Building
The machine learning model is built using Linear Regression Algorithm.
Linear Regression is used to predict student marks based on input variables.
Linear Regression Equation
Y=a+b1x1+b2x2+b3x3
Where:
Y = Final Marks
X1 = Study Hours
X2 = Attendance
X3 = Internal Marks
a = Intercept
b1, b2, b3 = Coefficients
The model learns the relationship between input variables and output variables from training data.
4.6 Model Testing
After training the model, the testing dataset is used to evaluate performance. The
model predicts student marks using test data.
Data Science-based prediction system Page 7
The predicted values are compared with actual values.
4.7 Model Evaluation
The model performance is evaluated using:
R² Score
R² score measures prediction accuracy.
R2= 1- SSres/SStot
Higher R² value indicates better prediction accuracy.
Typical accuracy obtained:
90% – 97%
Methodology Diagram
Data Science-based prediction system Page 8
Block Diagram Version
Data Science-based prediction system Page 9
5. Implementation (Python)
The implementation of the Student Performance Prediction system is done using the Python
programming language. Python provides powerful libraries for data analysis and machine
learning such as Pandas, NumPy, Scikit-learn, and Matplotlib.
The machine learning model is implemented using the Linear Regression algorithm to predict
student final marks based on study hours, attendance percentage, and internal assessment marks.
5.1 Required Libraries
The following Python libraries are used in this project:
Pandas – Used for handling dataset
NumPy – Used for numerical operations
Scikit-learn – Used for machine learning algorithms
Matplotlib – Used for visualization
5.2 Dataset Creation
The dataset is created using student academic information such as study hours, attendance,
internal marks, and final marks.
import pandas as pd
data = {
'Hours':[2,3,4,5,6,7,8,9,10,6],
'Attendance':[60,65,70,75,80,85,88,90,92,78],
'Internal':[15,18,20,22,25,27,28,29,30,24],
'Marks':[40,45,50,60,65,70,75,80,90,68]
}
df = [Link](data)
print(df)
Explanation
The dataset is stored in a dictionary format.
Pandas DataFrame is used to organize the data into tabular form.
Each row represents one student record.
Data Science-based prediction system Page 10
5.3 Feature Selection
Input variables and output variables are separated. X =
df[['Hours','Attendance','Internal']]
Y = df['Marks']
Explanation
X represents input features.
Y represents output variable (Final Marks).
Machine learning model uses X to predict Y.
5.4 Splitting Dataset
The dataset is divided into training and testing data. from
sklearn.model_selection import train_test_split
X_train,X_test,Y_train,Y_test = train_test_split(
X,Y,test_size=0.2,random_state=0)
Explanation
80% data used for training.
20% data used for testing.
Training data is used to build the model.
Testing data is used to evaluate accuracy.
5.5 Model Training
Linear Regression model is trained using training data.
from sklearn.linear_model import LinearRegression
model = LinearRegression()
[Link](X_train,Y_train)
Explanation
LinearRegression() creates the model.
fit() trains the model.
The model learns relationship between inputs and outputs.
Data Science-based prediction system Page 11
5.6 Prediction
The trained model predicts student marks.
Explanation
predict() function calculates predicted marks.
Model uses test data for prediction.
5.7 Model Evaluation
Model accuracy is calculated using R² score.
from [Link] import r2_score
accuracy = r2_score(Y_test,prediction)
print("Accuracy =",accuracy)
Explanation
R² score measures prediction accuracy.
Value closer to 1 indicates better performance.
Typical accuracy is 90% – 97%.
5.8 Graph Visualization
Graph is plotted between Study Hours and Final Marks.
import [Link] as plt
[Link](df['Hours'],df['Marks'])
[Link]("Study Hours")
[Link]("Final Marks")
[Link]("Student Performance Prediction") [Link]()
Explanation
Scatter plot shows relationship between study hours and marks.
Graph helps visualize data trends.
Higher study hours generally lead to higher marks.
Data Science-based prediction system Page 12
6. Results
The Student Performance Prediction system was implemented using the Linear Regression
algorithm. The model was trained using student academic data such as study hours, attendance
percentage, and internal assessment marks.
After training the model, predictions were made using the testing dataset. The predicted marks were
compared with the actual marks to evaluate the performance of the model.
The results show that the machine learning model predicts student marks with good accuracy.
6.1 Predicted Results Table
The following table shows the comparison between actual marks and predicted marks.
Student
Study Hours Attendance Internal Marks Actual Marks Predicted Marks
S1 80 25 65 66
S2 88 28 75 74
S3 70 20 50 52
S4 90 29 80 79
Observation
Predicted marks are very close to actual marks.
The model shows good prediction performance.
Small differences occur due to estimation error.
6.2 Model Accuracy
The accuracy of the model is calculated using the R² Score.
Formula
R² = 1 − (SSres / SStot)
Accuracy Obtained
Accuracy = 0.94
This indicates that the model predicts student marks with 94% accuracy, which is considered
very good for a small dataset.
Data Science-based prediction system Page 13
6.3 Graph 1 – Study Hours vs Final
Marks Description
This graph shows the relationship between study hours and final marks.
X-axis → Study Hours
Y-axis → Final Marks
Observation
Students who study more hours score higher marks.
The relationship between study hours and marks is positive.
Linear trend can be observed.
Figure 6.1: Study Hours vs Final Marks
6.4 Graph 2 – Actual Marks vs Predicted Marks
Description
This graph compares actual marks with predicted marks.
X-axis → Actual Marks
Y-axis → Predicted Marks
Data Science-based prediction system Page 14
Observation
Points are close to straight line.
Model predictions are accurate.
Small variation is observed.
Figure 6.2: Actual Marks vs Predicted Marks
6.5 Result Analysis
From the obtained results, the following observations are made:
Linear Regression model performs well.
Prediction accuracy is high.
Study hours strongly affect marks.
Attendance improves performance.
Internal marks influence final results.
The system successfully predicts student academic performance using machine learning techniques.
Data Science-based prediction system Page 15
7. Conclusion
This project focused on developing a Student Performance Prediction system using Data
Science techniques. The main objective of the project was to predict student final examination
marks based on study hours, attendance percentage, and internal assessment marks.
The dataset containing student academic information was analyzed and processed using Python
programming. A machine learning model based on the Linear Regression algorithm was
developed to predict student performance. The model was trained and tested using the dataset,
and the predicted results were compared with the actual marks.
The results obtained from the model show that student marks can be predicted with good
accuracy. The analysis shows that study hours, attendance, and internal marks have a significant
influence on student performance. The graphical representation also indicates a positive
relationship between study hours and final marks.
The developed system helps educational institutions analyze student academic data efficiently
and identify students who need additional support. The use of Data Science techniques reduces
manual effort and improves decision-making.
Overall, the project demonstrates that Data Science and Machine Learning techniques can be
effectively applied in the education domain to predict student academic performance with
satisfactory accuracy.
Data Science-based prediction system Page 16
8. Future Enhancement
The Student Performance Prediction system developed in this project can be further improved in
several ways. The current system uses a small dataset and a basic machine learning algorithm.
Future improvements can enhance the accuracy and usability of the system.
One possible enhancement is the use of a larger real-world dataset collected from educational
institutions. A larger dataset will improve the accuracy and reliability of the prediction model.
Advanced machine learning algorithms such as Random Forest, Support Vector Machine
(SVM), and Neural Networks can be applied to improve prediction performance. These
algorithms can capture complex relationships between student features and academic
performance.
Additional parameters can also be included in the dataset such as:
Assignment Marks
Previous Semester Marks
Participation in Class
Socio-economic Factors
Online Learning Activity
These additional features can improve prediction accuracy.
Another enhancement is the development of a web-based or mobile-based application that
allows teachers to enter student details and obtain performance predictions instantly.
The system can also be extended into a real-time student monitoring system that continuously
tracks student progress and provides early warning for weak students.
Thus, the proposed system can be expanded into a complete Smart Education Analytics
System using advanced Data Science techniques.
Data Science-based prediction system Page 17
9. Tools & Technologies
The Student Performance Prediction project is implemented using various software tools and
technologies. These tools help in data processing, machine learning implementation, and
visualization.
Tool / Technology Description Purpose
Python Programming Language Used to implement machine learning model
Pandas Data Analysis Library Used for dataset handling and preprocessing
NumPy Numerical Library Used for mathematical calculations
Used to implement Linear Regression
Scikit-learn Machine Learning Library
algorithm
Matplotlib Visualization Library Used to generate graphs and charts
Development
Jupyter Notebook Used for writing and testing Python code
Environment
MS Excel / CSV
Dataset Storage Used to store student dataset
File
MS Word Documentation Tool Used to prepare project report
Data Science-based prediction system Page 18
ANNEXURE
# Student Performance Prediction Using Linear Regression
# Step 1: Import Required Libraries
import pandas as pd
import numpy as np
import [Link] as plt
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from [Link] import r2_score
# Step 2: Create Dataset
data = {
'Hours':[2,3,4,5,6,7,8,9,10,6],
'Attendance':[60,65,70,75,80,85,88,90,92,78],
'Internal':[15,18,20,22,25,27,28,29,30,24],
'Marks':[40,45,50,60,65,70,75,80,90,68]
}
df = [Link](data)
print("Student Dataset")
print(df)
# Step 3: Select Features and Target
X = df[['Hours','Attendance','Internal']]
Y = df['Marks']
# Step 4: Split Dataset
X_train, X_test, Y_train, Y_test =
train_test_split( X, Y, test_size=0.2,
random_state=0)
# Step 5: Train Model
model = LinearRegression()
[Link](X_train, Y_train)
# Step 6: Predict Marks
prediction = [Link](X_test)
print("\nPredicted Marks:")
print(prediction)
# Step 7: Model Accuracy
accuracy = r2_score(Y_test, prediction) print("\
nModel Accuracy (R2 Score):", accuracy) # Step
8: Show Actual vs Predicted
result =
[Link]({ 'Actual
Marks':Y_test, 'Predicted
Marks':prediction
})
print("\nActual vs Predicted Marks")
print(result)
Data Science-based prediction system Page 19
# Step 9: Graph 1 Study Hours vs Marks
Data Science-based prediction system Page 20
[Link]()
[Link](df['Hours'], df['Marks'])
[Link]("Study Hours")
[Link]("Final Marks")
[Link]("Study Hours vs Marks")
[Link]()
# Step 10: Graph 2 Actual vs Predicted
[Link]()
[Link](Y_test, prediction)
[Link]("Actual Marks")
[Link]("Predicted Marks")
[Link]("Actual vs Predicted Marks")
[Link]()
Data Science-based prediction system Page 21