# Comprehensive Regression Series – Predicting Student Performance – Part 1 – Understanding the Data Set

In this series, we will walk through the whole procedure of solving a regression problem in python.

In a Regression problem, we predict continuous values (like price of a stock, or student performance as in this case)

We will be using a data set regarding the performance of high school students in Mathematics class.

The data set is provided by the UCI Machine Learning Repository. It is an excellent source for finding Data sets to play around with and practice.

This is the first part of the Comprehensive Regression Series.
We strongly recommend you to go through the previous parts before starting with this one.
The series is as follows:

### Data Set Description:

The data set contains information about various high school students and their performances in the Mathematics class. The data attributes include student grades, demographic, social and school related features.

There are 395 instances (rows) and 33 attributes (columns).

Attribute Information:

1. school – student’s school (binary: ‘GP’ – Gabriel Pereira or ‘MS’ – Mousinho da Silveira)
2. sex – student’s sex (binary: ‘F’ – female or ‘M’ – male)
3. age – student’s age (numeric: from 15 to 22)
4. address – student’s home address type (binary: ‘U’ – urban or ‘R’ – rural)
5. famsize – family size (binary: ‘LE3’ – less or equal to 3 or ‘GT3’ – greater than 3)
6. Pstatus – parent’s cohabitation status (binary: ‘T’ – living together or ‘A’ – apart)
7. Medu – mother’s education (numeric: 0 – none, 1 – primary education (4th grade), 2 – 5th to 9th grade, 3 -secondary education or 4 – higher education)
8. Fedu – father’s education (numeric: 0 – none, 1 – primary education (4th grade), 2 – 5th to 9th grade, 3 – secondary education or 4 – higher education)
9. Mjob – mother’s job (nominal: ‘teacher’, ‘health’ care related, civil ‘services’ (e.g. administrative or police), ‘at_home’ or ‘other’)
10. Fjob – father’s job (nominal: ‘teacher’, ‘health’ care related, civil ‘services’ (e.g. administrative or police), ‘at_home’ or ‘other’)
11. reason – reason to choose this school (nominal: close to ‘home’, school ‘reputation’, ‘course’ preference or ‘other’)
12. guardian – student’s guardian (nominal: ‘mother’, ‘father’ or ‘other’)
13. traveltime – home to school travel time (numeric: 1 – <15 min., 2 – 15 to 30 min., 3 – 30 min. to 1 hour, or 4 – >1 hour)
14. studytime – weekly study time (numeric: 1 – <2 hours, 2 – 2 to 5 hours, 3 – 5 to 10 hours, or 4 – >10 hours)
15. failures – number of past class failures (numeric: n if 1<=n<3, else 4)
16. schoolsup – extra educational support (binary: yes or no)
17. famsup – family educational support (binary: yes or no)
18. paid – extra paid classes within the course subject (Math) (binary: yes or no)
19. activities – extra-curricular activities (binary: yes or no)
20. nursery – attended nursery school (binary: yes or no)
21. higher – wants to take higher education (binary: yes or no)
22. internet – Internet access at home (binary: yes or no)
23. romantic – with a romantic relationship (binary: yes or no)
24. famrel – quality of family relationships (numeric: from 1 – very bad to 5 – excellent)
25. freetime – free time after school (numeric: from 1 – very low to 5 – very high)
26. goout – going out with friends (numeric: from 1 – very low to 5 – very high)
27. Dalc – workday alcohol consumption (numeric: from 1 – very low to 5 – very high)
28. Walc – weekend alcohol consumption (numeric: from 1 – very low to 5 – very high)
29. health – current health status (numeric: from 1 – very bad to 5 – very good)
30. absences – number of school absences (numeric: from 0 to 93)
31. G1 – first period grade (numeric: from 0 to 20)
32. G2 – second period grade (numeric: from 0 to 20)
33. G3 – final grade (numeric: from 0 to 20, output target)

### Problem:

The associated problem is to predict the Final Grade (G3) of the student based on the other available attributes.

Next, we performed Exploratory Data Analysis (EDA) on this data set using one of the most popular python libraries – Pandas !

Stay tuned.