library(readxl)
estudiante <- read_excel("C:/Users/USERPRO/Desktop/metodos cuantitativos/parcial uno/deber de rendimineto academico brazil/student-mat.xlsx")
head(estudiante,10)
tail(estudiante,10)
-school:Institución diseñada para proporcionar espacios de aprendizaje(binario: “GP” - Gabriel Pereira o “MS” - Mousinho da Silveira).
-sex:Características biológicas que distinguen a los seres humanos (binario: “F” - femenino o “M” - masculino).
-age:Tiempo transcurrido desde el nacimiento de una persona hasta el momento presente(numérica: de 15 a 22 años).
address:Ubicación física donde una persona vive (binario: “U” - urbano o “R” - rural).
famsize :Número de personas que componen un grupo familiar (binario: “LE3” - menos o igual a 3 o “GT3” - mayor que 3).
-Pstatus: Estado en la cual vive estudiante sea con padres casados o divorciados (binario: “T” - viviendo juntos o “A” - aparte).
-Medu:Grado de educación alcanzado por la madre (numérica: 0 - ninguna, 1 - educación primaria (4to grado), 2 – 5to a 9no grado, 3 – educación secundaria o 4 – educación superior).
-Fedu:Grado de educación alcanzado por el padre (numérica: 0 - ninguna, 1 - educación primaria (4to grado), 2 – 5to a 9no grado, 3 – educación secundaria o 4 – educación superior).
-Mjob:Refiere a la actividad física o intelectual que la madre reliza para obtener dinero (nominal: “maestro”, “salud” relacionado con la atención, “servicios” civiles (por ejemplo, administrativos o policiales), “at_home” u “otro”).
-Fjob:Refiere a la actividad física o intelectual que el padre reliza para obtener dinero (nominal: “maestro”, “salud” relacionado con la atención, “servicios” civiles (por ejemplo, administrativos o policiales), “at_home” u “otro”).
-Razón:Razón para elegir esta escuela (nominal: cerca de “hogar”, escuela “reputación”, “curso” preferencia u “otro”).
-reason:Persona que brinda apoyo y orientación académica a estudiantes en su proceso de aprendizaje (nominal: “madre”, “padre” u “otro”).
-traveltime: Tiempo el cual se demora en llegar el estudiante desde su casa hasta la escuela (numérico: 1 - <15 min., 2 - 15 a 30 min., 3 - 30 min. a 1 hora, o 4 - >1 hora).
-studytime: Tiempo en la cual el estudiante le dedica a estudiar en casa (numérico: 1 - <2 horas, 2 - 2 a 5 horas, 3 - 5 a 10 horas, o 4 - >10 horas).
-failures:Total de numeros clases no asistidas por el estudiante (numéricas: n si 1<=n<3, else 4).
-schoolsup:Tiempo en la cual se emplea para mejor el rendiemiento academico (binario: sí o no).
-famsup:Tiempo en la cual se emplea para mejor el rendiemiento academico en el hogar (binario: sí o no).
-paid: Horas de clases dentro de la asignatura pagadas (binario: sí o no).
-activities:actividades que se llevan a cabo fuera del horario académico regular y no forman parte del plan de estudios establecido(binarias: sí o no).
-nursery:centro educativo o de cuidado que brinda atención a niños pequeños(binaria: sí o no).
-higher:Desición si desea continuar sus estudios superior(binaria: sí o no).
-internet:Citio donde se puede obtener todo tipo de informacion (binario: sí o no).
-romantic: una relación romántica(binaria: sí o no).
-famrel:Como evalua su relacion familiares(binaria: sí o no).
-freetime:Tiempo libre después de la escuela (numérico: de 1 - muy bajo a 5 - muy alto).
-goout:Salir con amigos (numérico: de 1 - muy bajo a 5 - muy alto).
Dalc - consumo de alcohol en el día laboral (numérico: de 1 - muy bajo a 5 - muy alto).
Walc - consumo de alcohol de fin de semana (numérico: de 1 - muy bajo a 5 - muy alto).
-salud:Estado de salud actual (numérico: de 1 - muy malo a 5 - muy bueno),
-ausencias:Número de ausencias escolares (numéricas: de 0 a 93).
-G1:primer grado del período (numérico: de 0 a 20).
-G2:segundo grado del período (numérico: de 0 a 20).
-G3:grado final (numérico: de 0 a 20, objetivo de salida).
sum(is.na(estudiante))
## [1] 0
# diagrama de caja para verificar datos atipicos
boxplot(estudiante[sapply(estudiante, is.numeric)])
SE puede verificar que no hay datos N.A en la base de datos ademas en el diagrama de cajas se puede observar que no hay la presencia de datos atipicos en las variables medu,goout,dalc,g1 y g3 mientras que en las demas variables se puede ver la presencia de datos atipicos.
str(estudiante)
## tibble [395 × 33] (S3: tbl_df/tbl/data.frame)
## $ school : chr [1:395] "GP" "GP" "GP" "GP" ...
## $ sex : chr [1:395] "F" "F" "F" "F" ...
## $ age : num [1:395] 18 17 15 15 16 16 16 17 15 15 ...
## $ address : chr [1:395] "U" "U" "U" "U" ...
## $ famsize : chr [1:395] "GT3" "GT3" "LE3" "GT3" ...
## $ Pstatus : chr [1:395] "A" "T" "T" "T" ...
## $ Medu : num [1:395] 4 1 1 4 3 4 2 4 3 3 ...
## $ Fedu : num [1:395] 4 1 1 2 3 3 2 4 2 4 ...
## $ Mjob : chr [1:395] "at_home" "at_home" "at_home" "health" ...
## $ Fjob : chr [1:395] "teacher" "other" "other" "services" ...
## $ reason : chr [1:395] "course" "course" "other" "home" ...
## $ guardian : chr [1:395] "mother" "father" "mother" "mother" ...
## $ traveltime: num [1:395] 2 1 1 1 1 1 1 2 1 1 ...
## $ studytime : num [1:395] 2 2 2 3 2 2 2 2 2 2 ...
## $ failures : num [1:395] 0 0 3 0 0 0 0 0 0 0 ...
## $ schoolsup : chr [1:395] "yes" "no" "yes" "no" ...
## $ famsup : chr [1:395] "no" "yes" "no" "yes" ...
## $ paid : chr [1:395] "no" "no" "yes" "yes" ...
## $ activities: chr [1:395] "no" "no" "no" "yes" ...
## $ nursery : chr [1:395] "yes" "no" "yes" "yes" ...
## $ higher : chr [1:395] "yes" "yes" "yes" "yes" ...
## $ internet : chr [1:395] "no" "yes" "yes" "yes" ...
## $ romantic : chr [1:395] "no" "no" "no" "yes" ...
## $ famrel : num [1:395] 4 5 4 3 4 5 4 4 4 5 ...
## $ freetime : num [1:395] 3 3 3 2 3 4 4 1 2 5 ...
## $ goout : num [1:395] 4 3 2 2 2 2 4 4 2 1 ...
## $ Dalc : num [1:395] 1 1 2 1 1 1 1 1 1 1 ...
## $ Walc : num [1:395] 1 1 3 1 2 2 1 1 1 1 ...
## $ health : num [1:395] 3 3 3 5 5 5 3 1 1 5 ...
## $ absences : num [1:395] 6 4 10 2 4 10 0 6 0 0 ...
## $ G1 : num [1:395] 5 5 7 15 6 15 12 6 16 14 ...
## $ G2 : num [1:395] 6 5 8 14 10 15 12 5 18 15 ...
## $ G3 : num [1:395] 6 6 10 15 10 15 11 6 19 15 ...
# Total variables numericas
num_numeric <- sum(sapply(estudiante, is.numeric));num_numeric
## [1] 16
num_carac <- sum(sapply(estudiante, is.character));num_carac
## [1] 17
En esta base de datos se puede observar que hay 395 observaciones y 33 variables de la cuales 16 son de tipo numerico y 17 son de tipo caracter.
numericos <- estudiante[sapply(estudiante, is.numeric)]
summary(numericos)
## age Medu Fedu traveltime studytime
## Min. :15.0 Min. :0.000 Min. :0.000 Min. :1.000 Min. :1.000
## 1st Qu.:16.0 1st Qu.:2.000 1st Qu.:2.000 1st Qu.:1.000 1st Qu.:1.000
## Median :17.0 Median :3.000 Median :2.000 Median :1.000 Median :2.000
## Mean :16.7 Mean :2.749 Mean :2.522 Mean :1.448 Mean :2.035
## 3rd Qu.:18.0 3rd Qu.:4.000 3rd Qu.:3.000 3rd Qu.:2.000 3rd Qu.:2.000
## Max. :22.0 Max. :4.000 Max. :4.000 Max. :4.000 Max. :4.000
## failures famrel freetime goout
## Min. :0.0000 Min. :1.000 Min. :1.000 Min. :1.000
## 1st Qu.:0.0000 1st Qu.:4.000 1st Qu.:3.000 1st Qu.:2.000
## Median :0.0000 Median :4.000 Median :3.000 Median :3.000
## Mean :0.3342 Mean :3.944 Mean :3.235 Mean :3.109
## 3rd Qu.:0.0000 3rd Qu.:5.000 3rd Qu.:4.000 3rd Qu.:4.000
## Max. :3.0000 Max. :5.000 Max. :5.000 Max. :5.000
## Dalc Walc health absences
## Min. :1.000 Min. :1.000 Min. :1.000 Min. : 0.000
## 1st Qu.:1.000 1st Qu.:1.000 1st Qu.:3.000 1st Qu.: 0.000
## Median :1.000 Median :2.000 Median :4.000 Median : 4.000
## Mean :1.481 Mean :2.291 Mean :3.554 Mean : 5.709
## 3rd Qu.:2.000 3rd Qu.:3.000 3rd Qu.:5.000 3rd Qu.: 8.000
## Max. :5.000 Max. :5.000 Max. :5.000 Max. :75.000
## G1 G2 G3
## Min. : 3.00 Min. : 0.00 Min. : 0.00
## 1st Qu.: 8.00 1st Qu.: 9.00 1st Qu.: 8.00
## Median :11.00 Median :11.00 Median :11.00
## Mean :10.91 Mean :10.71 Mean :10.42
## 3rd Qu.:13.00 3rd Qu.:13.00 3rd Qu.:14.00
## Max. :19.00 Max. :19.00 Max. :20.00
-La edad de los estudiantes varía entre 15 y 22 años, con una edad promedio de alrededor de 16.7 años. La mayoría de los estudiantes (25% a 75%) tienen entre 16 y 18 años.
-Educación de la madre y Educación del padre estas variables representan el nivel educativo de la madre y el padre, respectivamente. Ambas variables varían de 0 a 4, lo que probablemente indica el nivel educativo, siendo 0 el nivel más bajo y 4 el nivel más alto. La media sugiere que en promedio, los padres tienen un poco menos de educación que las madres.
-Tiempo de viaje indica el tiempo de viaje de los estudiantes a la escuela, que varía de 1 a 4, con una media de alrededor de 1.45. Esto podría estar en horas o alguna otra unidad de tiempo.
-Tiempo de estudio de los estudiantes pasan en promedio alrededor de 2 horas estudiando diariamente, con una variación entre 1 y 4 horas.
-Número de fallos representa el número de veces que el estudiante ha fallado. La mayoría de los estudiantes no tienen fallos, pero la media sugiere que en promedio, los estudiantes tienen aproximadamente 0.33 fallos.
-Relación familiar tiene promedio es cercana a 4, lo que sugiere una relación bastante positiva en promedio.
-Tiempo libre, Salir con amigos,Consumo de alcohol en días laborables y Walc Consumo de alcohol en fines de semana tine el tiempo libre, salir con amigos y el consumo de alcohol durante los días laborables y los fines de semana. Los valores oscilan entre 1 y 5, con 1 indicando un bajo nivel y 5 indicando un alto nivel.
-Estado de salud tiene un promedio está alrededor de 3.55, lo que sugiere un estado de salud moderado en promedio.
-El número promedio de ausencias es de aproximadamente 5.71, pero con una gran variabilidad, como se indica por el rango de 0 a 75.
-G1, G2, G3 Notas: Las notas varían de 0 a 20, con un promedio que va de 10.42 a 10.91 en las diferentes evaluaciones G1, G2, G3.
# Edad
hist(numericos$age, main = "Histograma de la variable Edad", xlab = "Edad")
La distribución de los datos sugiere que la mayoría de los estudiantes en este conjunto de datos tienen entre 17 y 19 años, con un pico a los 18 años. El número de individuos a las edades de 16 y 20-21 es considerablemente menor.
hist(numericos$Medu, main = "Histograma de la variable Educación de la madre", xlab = "educación de la madre")
Los niveles de educación de la madre dentro del conjunto de datos. Sugiere que la mayoría de las madres tienen niveles de educación entre 5to y 9no grado y educación secundaria, con menos tener educación primaria o superior, y muy pocos no tener educación.
hist(numericos$Fedu, main = "Histograma de la variable padre", xlab = "educación de la padre")
Los niveles de educación del padre dentro del conjunto de datos. Sugiere que la mayoría de los padres tienen niveles de educación entre 5to y 9no grado, educación secundaria o educación superior, con menos educación primaria y educación superior.
hist(numericos$traveltime, main = "Histograma de Tiempo de viaje", xlab = "Tiempo de viaje")
los tiempos de viaje, con la mayoría de los viajes dentro del rango de 15-30 minutos. Una proporción significativa de viajes toma menos de 15 minutos , mientras que alrededor del 20% de los viajes toman entre 30 minutos y 1 hora. Un pequeño porcentaje de viajes dura más de 1 hora.
hist(numericos$studytime, main = "Histograma de Tiempo de estudio", xlab = "Tiempo de estudio")
los tiempos de estudio, con la mayoría de las sesiones de estudio dentro del rango de 2-5 horas. Una proporción significativa de las sesiones de estudio toma menos de 2 horas, mientras que alrededor del 20% de las sesiones de estudio toman entre 5 horas y 10 horas. Un pequeño porcentaje de las sesiones de estudio toma más de 10 horas.
hist(numericos$failures, main = "Histograma de Número de fracasos", xlab = "Número de fracasos")
Las fallas de clase pasadas, con la mayoría de los estudiantes que tienen 1 o 2 fallas . Una proporción significativa de estudiantes tiene 3 fracasos de clase pasados, mientras que un porcentaje más pequeño de estudiantes tiene más de 3 fracasos de clase pasados. Esta información se puede utilizar para identificar a los estudiantes que pueden necesitar apoyo académico adicional y recursos.
hist(numericos$famrel, main = "Histograma de Relaciones familiares", xlab = "Relaciones familiares")
Los niveles de relaciones familiares van de 1 a 5, con 1 representando relaciones muy malas y 5 representando relaciones excelentes. Una puntuación de 1 indica que el individuo tiene relaciones muy pobres o tensas con los miembros de su familia, mientras que una puntuación de 5 indica que el individuo tiene relaciones muy fuertes y de apoyo con los miembros de su familia. Las puntuaciones en el medio del rango (2-4) indican diversos grados de relaciones neutrales o positivas con los miembros de la familia.
hist(numericos$freetime, main = "Histograma de Tiempo libre", xlab = "Tiempo libre")
La mayoría de los estudiantes que tienen al menos 2 horas de tiempo libre después de la escuela. El modo de distribución es de alrededor de 3,5 horas, lo que indica que esta es la cantidad más común de tiempo libre. Sin embargo, el tiempo libre medio o medio es probablemente menor debido a la asimetría de la distribución. El histograma sugiere que un pequeño número de estudiantes tienen cantidades muy bajas o muy altas de tiempo libre después de la escuela.
hist(numericos$goout, main = "Histograma de Salir", xlab = "Salir")
El histograma muestra una distribución sesgada a la derecha, y la mayoría de las personas pasan al menos 2 horas saliendo con amigos. El modo de distribución es de alrededor de 3,5 horas, lo que indica que esta es la cantidad más común de tiempo dedicado a salir con amigos. Sin embargo, el tiempo medio o medio dedicado a salir es probablemente menor debido a la asimetría de la distribución. El histograma sugiere que un pequeño número de personas pasan cantidades muy bajas o muy altas de tiempo saliendo con amigos.
hist(numericos$Dalc, main = "Histograma de Consumo de alcohol entre semana", xlab = "Consumo de alcohol entre semana")
El histograma muestra una distribución sesgada hacia la derecha, con la mayoría de las personas que informan un consumo muy bajo o bajo de alcohol en el día laboral. El modo de la distribución está en el nivel 1, lo que indica que este es el nivel de consumo más común. La media o la mediana del consumo son probablemente también bajas debido a la sesgo de la distribución. El histograma sugiere que la mayoría de las personas tienen niveles muy bajos o bajos de consumo de alcohol en el día laboral, con solo una pequeña proporción que informa niveles moderados o altos de consumo. Este hallazgo apoya las recomendaciones de salud pública para limitar el consumo de alcohol.
hist(numericos$Walc, main = "Histograma de Consumo de alcohol entre Fin semana", xlab = "Consumo de alcohol entre Fin semana")
El histograma muestra una distribución sesgada hacia la derecha, con la mayoría de las personas que informan un consumo muy bajo o bajo de alcohol durante el fin de semana. El modo de la distribución está en el nivel 1, lo que indica que este es el nivel de consumo más común. La media o la mediana del consumo es probablemente también baja debido a la sesgo de la distribución. El histograma sugiere que la mayoría de las personas tienen niveles muy bajos o bajos de consumo de alcohol durante el fin de semana, con solo una pequeña proporción que informa niveles moderados o altos de consumo. Este hallazgo apoya las recomendaciones de salud pública para limitar el consumo de alcohol. Sin embargo, es importante alentar a las personas a tomar decisiones informadas sobre su consumo de alcohol y proporcionar recursos y apoyo a aquellos que puedan necesitarlos, ya que incluso los niveles bajos de consumo de alcohol pueden tener efectos negativos en la salud.
hist(numericos$health, main = "Histograma de Salud", xlab = "Salud")
el histograma muestra que la mayoría de las personas en el grupo tienen un estado de salud bueno o muy bueno, lo que indica que el grupo está en buena salud en general. Sin embargo, es importante considerar otros factores de salud al evaluar el estado de salud del grupo.
### Ausencias
hist(numericos$absences, main = "Histograma de Ausencias", xlab = "Ausencias")
La media o la mediana del número de ausencias también son probablemente bajas debido a la sesgo de la distribución. El histograma sugiere que la mayoría de los estudiantes en el grupo tienen pocas ausencias escolares, con solo una pequeña proporción que tiene un número significativo de ausencias. Este hallazgo es positivo y puede indicar que los estudiantes están asistiendo regularmente a la escuela. Sin embargo, es importante tener en cuenta que un número bajo de ausencias escolares no necesariamente indica que los estudiantes están aprendiendo o progresando en la escuela. Por lo tanto, es importante considerar otros factores, como los resultados de exámenes y las calificaciones, al evaluar el rendimiento académico de los estudiantes.
hist(numericos$G1, main = "Histograma de Nota del primer periodo", xlab = "Nota del primer periodo")
el histograma muestra que la mayoría de las personas viajan entre 1 y 2 horas, con una frecuencia máxima de aproximadamente 60 personas. Esto podría ser útil para planificar horarios de transporte o para analizar el impacto del tiempo de viaje en otros aspectos de la vida, como el tiempo libre o el rendimiento laboral.
hist(numericos$G2, main = "Histograma de Nota del segundo periodo", xlab = "Nota del segundo periodo")
el histograma muestra que la mayoría de las personas viajan entre 1 y 2 horas, con una frecuencia máxima de aproximadamente 60 personas. Esto podría ser útil para planificar horarios de transporte o para analizar el impacto del tiempo de viaje en otros aspectos de la vida, como el tiempo libre o el rendimiento laboral.
hist(numericos$G3, main = "Histograma de Nota final", xlab = "Nota final")
el histograma muestra que la mayoría de los tiempos de viaje están entre 1 y 3 horas, pero hay una cola larga de viajes más largos que podrían requerir atención adicional.
## Prueba de normailidad age
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$age)
##
## Shapiro-Wilk normality test
##
## data: numericos$age
## W = 0.91059, p-value = 1.589e-14
Como el p valor es de 1.589e-14 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad Medu
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$Medu)
##
## Shapiro-Wilk normality test
##
## data: numericos$Medu
## W = 0.86103, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad Fedu
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$Fedu)
##
## Shapiro-Wilk normality test
##
## data: numericos$Fedu
## W = 0.87555, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad traveltime
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$traveltime)
##
## Shapiro-Wilk normality test
##
## data: numericos$traveltime
## W = 0.65921, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad studytime
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$studytime)
##
## Shapiro-Wilk normality test
##
## data: numericos$studytime
## W = 0.8342, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad failures
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$failures)
##
## Shapiro-Wilk normality test
##
## data: numericos$failures
## W = 0.50707, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad famrel
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$famrel)
##
## Shapiro-Wilk normality test
##
## data: numericos$famrel
## W = 0.83023, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad freetiem
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$freetime)
##
## Shapiro-Wilk normality test
##
## data: numericos$freetime
## W = 0.90611, p-value = 6.427e-15
Como el p valor es de 6.427e-15 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad Medu
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$goout)
##
## Shapiro-Wilk normality test
##
## data: numericos$goout
## W = 0.91002, p-value = 1.413e-14
Como el p valor es de 1.313e-14 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad Dalc
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$Dalc)
##
## Shapiro-Wilk normality test
##
## data: numericos$Dalc
## W = 0.59784, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad walc
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$Walc)
##
## Shapiro-Wilk normality test
##
## data: numericos$Walc
## W = 0.84702, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad health
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$health)
##
## Shapiro-Wilk normality test
##
## data: numericos$health
## W = 0.84865, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad absences
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$absences)
##
## Shapiro-Wilk normality test
##
## data: numericos$absences
## W = 0.66683, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad Medu
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$health)
##
## Shapiro-Wilk normality test
##
## data: numericos$health
## W = 0.84865, p-value < 2.2e-16
Como el p valor es de 2.2e-16 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad G1
## Hipoteisis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$G1)
##
## Shapiro-Wilk normality test
##
## data: numericos$G1
## W = 0.97491, p-value = 2.454e-06
Como el p valor es de 2.454e-06 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad G2
### Hipotesis
##-Ho:Los datos presenta una distribución normal.
##-H1:Los datos no presenta una distribución normal.
## Significancia
## alpha: 0.05
# Estadistico
shapiro.test(numericos$G2)
##
## Shapiro-Wilk normality test
##
## data: numericos$G2
## W = 0.96914, p-value = 2.084e-07
Como el p valor es de 2.084e-07 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
## Prueba de normailidad G3
### Hipotesis
#-Ho:Los datos presenta una distribución normal.
#-H1:Los datos no presenta una distribución normal.
### Significancia
# alpha: 0.05
# Estadistico
shapiro.test(numericos$G3)
##
## Shapiro-Wilk normality test
##
## data: numericos$G3
## W = 0.92873, p-value = 8.836e-13
Como el p valor es de 8.836e-13 es menor que 0.05,se rechaza la hipótesis nula, por lo tanto, los datos no presenta una distribución normal.
# Clases de las variables
classes<-sapply(estudiante,class);classes
## school sex age address famsize Pstatus
## "character" "character" "numeric" "character" "character" "character"
## Medu Fedu Mjob Fjob reason guardian
## "numeric" "numeric" "character" "character" "character" "character"
## traveltime studytime failures schoolsup famsup paid
## "numeric" "numeric" "numeric" "character" "character" "character"
## activities nursery higher internet romantic famrel
## "character" "character" "character" "character" "character" "numeric"
## freetime goout Dalc Walc health absences
## "numeric" "numeric" "numeric" "numeric" "numeric" "numeric"
## G1 G2 G3
## "numeric" "numeric" "numeric"
# transformar caracter a factor
columnas_a_convertir <- c("school", "sex","age","address","famsize","Pstatus","Medu","Fedu","Mjob","Fjob","reason","guardian","traveltime","studytime","failures","schoolsup","famsup","paid","activities","nursery","higher","internet","romantic","famrel","freetime","goout","Dalc","Walc","health","absences","G1","G2","G3")
# modelo de regresión lineal para variables cuantitativas
modelo <- lm(G3 ~. , data = numericos)
summary(modelo)
##
## Call:
## lm(formula = G3 ~ ., data = numericos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -8.6597 -0.4033 0.2559 0.9736 4.0970
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.6689158 1.5411303 -0.434 0.664505
## age -0.1815062 0.0808776 -2.244 0.025396 *
## Medu 0.1069982 0.1152672 0.928 0.353862
## Fedu -0.1404233 0.1143700 -1.228 0.220285
## traveltime 0.1270661 0.1420398 0.895 0.371579
## studytime -0.1362063 0.1208403 -1.127 0.260388
## failures -0.2321985 0.1457021 -1.594 0.111847
## famrel 0.3516407 0.1096758 3.206 0.001459 **
## freetime 0.0537032 0.1037476 0.518 0.605016
## goout 0.0004457 0.1003632 0.004 0.996459
## Dalc -0.1204910 0.1431980 -0.841 0.400638
## Walc 0.1545526 0.1067973 1.447 0.148679
## health 0.0555571 0.0700899 0.793 0.428475
## absences 0.0414289 0.0123309 3.360 0.000859 ***
## G1 0.1590346 0.0566607 2.807 0.005262 **
## G2 0.9743079 0.0502614 19.385 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.881 on 379 degrees of freedom
## Multiple R-squared: 0.8378, Adjusted R-squared: 0.8314
## F-statistic: 130.5 on 15 and 379 DF, p-value: < 2.2e-16
-El coeficiente para edad es -0.1815062. Esto significa que, en promedio, por cada año adicional de edad, el puntaje G3 disminuye en 0.1815062 unidades.
-El coeficiente para Medu es 0.1069982. Esto significa que, en promedio, por cada aumento de unidad adicional en el nivel de educación de la madre, el puntaje G3 aumenta en 0.1069982 unidades.
-El coeficiente para Fedu es -0.1404233. Esto significa que, en promedio, por cada aumento de unidad adicional en el nivel de educación del padre, el puntaje G3 disminuye en 0.1404233 unidades.
-El coeficiente para tiempo de viaje es 0.1270661. Esto significa que, en promedio, por cada aumento de unidad adicional en el tiempo de viaje a la escuela, el puntaje G3 aumenta en 0.1270661 unidades.
-El coeficiente para tiempo de estudio es -0.1362063. Esto significa que, en promedio, por cada aumento de unidad adicional en el tiempo de estudio semanal, la puntuación G3 disminuye en 0.1362063 unidades.
-El coeficiente para fracasos es -0.2321985. Esto significa que, en promedio, por cada falla adicional de clase pasada, la puntuación G3 disminuye en 0.2321985 unidades.
-El coeficiente para famrel es 0.3516407. Esto significa que, en promedio, por cada aumento de unidad adicional en la calidad de la relación familiar, el puntaje G3 aumenta en 0.3516407 unidades.
-El coeficiente para freetime es 0.0537032. Esto significa que, en promedio, por cada aumento adicional de unidad en el tiempo libre después de la escuela, el puntaje G3 aumenta en 0.0537032 unidades.
-El coeficiente para salir es 0.0004457. Esto significa que, en promedio, por cada aumento de unidad adicional en salir con amigos, el puntaje G3 aumenta en 0.0004457 unidades.
-El coeficiente para Dalc es -0.1204910. Esto significa que, en promedio, por cada aumento de unidad adicional en el consumo de alcohol entre semana, el puntaje G3 disminuye en 0.1204910 unidades.
-El coeficiente para Walc es 0.1545526. Esto significa que, en promedio, por cada aumento de unidad adicional en el consumo de alcohol durante el fin de semana, el puntaje G3 aumenta en 0.1545526 unidades.
-El coeficiente para salud es 0.0555571. Esto significa que, en promedio, por cada aumento adicional de unidad en el estado de salud, la puntuación G3 aumenta en 0.0555571 unidades.
-El coeficiente para ausencias es 0.0414289. Esto significa que, en promedio, por cada ausencia adicional de la escuela, el puntaje G3 aumenta en 0.0414289 unidades.
-El coeficiente para G1 es 0.1590346. Esto significa que, en promedio, por cada aumento de unidad adicional en el primer grado del período, el puntaje G3 aumenta en 0.1590346 unidades.
-El coeficiente para G2 es 0.9743079. Esto significa que, en promedio, por cada aumento de unidad adicional en el segundo grado del período, el puntaje G3 aumenta en 0.9743079 unidades.
# Selecion de variables
cuantitativos <- estudiante[, c("G3", "school", "sex", "address", "famsize","Pstatus","Mjob","Fjob","reason","guardian","schoolsup","famsup","paid","activities","nursery","higher","internet","romantic")]
# Ajuste del modelo de regresión lineal múltiple
modelo2 <- lm(G3 ~., data = cuantitativos)
# Visualización de los resultados
summary(modelo2)
##
## Call:
## lm(formula = G3 ~ ., data = cuantitativos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -11.5575 -2.1354 0.5908 2.8921 8.1889
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 6.1867241 1.9492766 3.174 0.00163 **
## schoolMS -0.1232032 0.7696452 -0.160 0.87291
## sexM 0.9719142 0.4856482 2.001 0.04610 *
## addressU 0.7963438 0.5860811 1.359 0.17505
## famsizeLE3 0.5740865 0.5090986 1.128 0.26020
## PstatusT -0.7206172 0.7568388 -0.952 0.34165
## Mjobhealth 1.3658852 1.0292362 1.327 0.18530
## Mjobother -0.1635051 0.7254700 -0.225 0.82181
## Mjobservices 0.6825726 0.7698388 0.887 0.37585
## Mjobteacher -0.0206004 0.9194879 -0.022 0.98214
## Fjobhealth 0.3295464 1.4899493 0.221 0.82508
## Fjobother -0.4117550 1.0595208 -0.389 0.69778
## Fjobservices -0.4060980 1.0917106 -0.372 0.71012
## Fjobteacher 1.4837881 1.3298883 1.116 0.26527
## reasonhome 0.1413330 0.5762373 0.245 0.80639
## reasonother 1.2250794 0.8519847 1.438 0.15131
## reasonreputation 1.1754146 0.5949068 1.976 0.04892 *
## guardianmother -0.0205253 0.5663066 -0.036 0.97111
## guardianother -0.9780735 0.9441730 -1.036 0.30093
## schoolsupyes -1.2372301 0.6916829 -1.789 0.07448 .
## famsupyes -0.8026820 0.4994886 -1.607 0.10891
## paidyes 0.7146602 0.4952540 1.443 0.14987
## activitiesyes -0.1564671 0.4649746 -0.337 0.73668
## nurseryyes -0.0008221 0.5748753 -0.001 0.99886
## higheryes 3.5138166 1.0801705 3.253 0.00125 **
## internetyes 0.8445880 0.6457572 1.308 0.19172
## romanticyes -1.1330669 0.4900036 -2.312 0.02131 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4.382 on 368 degrees of freedom
## Multiple R-squared: 0.1457, Adjusted R-squared: 0.0853
## F-statistic: 2.413 on 26 and 368 DF, p-value: 0.0001792
Aplicando el modelo de regresion multiple se tiene que las variables intercepto, sex,reasonreputation,romanticyes estas son las vriables que son significativas para el modelo mientras las otras no influyen en el rendimeinto academico.
SE puede ver que el mejor modelo que se plante es el de regreion multilple ya que su rcuadrado ajustado es de 85.30% el cual es mayor que el de regresion lineal el cual es mejor miodelo para ponosticar.
# Entrenamiento de modelo
tr=round(nrow(cuantitativos)*0.7)
set.seed(06071981)
muestra=sample.int(nrow(numericos), tr)
entrenamiento=numericos[muestra,]
validacion=numericos[-muestra,]
# Ajuste del modelo de regresión lineal múltiple
modelo1 <- lm(G3 ~., data = numericos)
# Visualización de los resultados
summary(modelo1)
##
## Call:
## lm(formula = G3 ~ ., data = numericos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -8.6597 -0.4033 0.2559 0.9736 4.0970
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.6689158 1.5411303 -0.434 0.664505
## age -0.1815062 0.0808776 -2.244 0.025396 *
## Medu 0.1069982 0.1152672 0.928 0.353862
## Fedu -0.1404233 0.1143700 -1.228 0.220285
## traveltime 0.1270661 0.1420398 0.895 0.371579
## studytime -0.1362063 0.1208403 -1.127 0.260388
## failures -0.2321985 0.1457021 -1.594 0.111847
## famrel 0.3516407 0.1096758 3.206 0.001459 **
## freetime 0.0537032 0.1037476 0.518 0.605016
## goout 0.0004457 0.1003632 0.004 0.996459
## Dalc -0.1204910 0.1431980 -0.841 0.400638
## Walc 0.1545526 0.1067973 1.447 0.148679
## health 0.0555571 0.0700899 0.793 0.428475
## absences 0.0414289 0.0123309 3.360 0.000859 ***
## G1 0.1590346 0.0566607 2.807 0.005262 **
## G2 0.9743079 0.0502614 19.385 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.881 on 379 degrees of freedom
## Multiple R-squared: 0.8378, Adjusted R-squared: 0.8314
## F-statistic: 130.5 on 15 and 379 DF, p-value: < 2.2e-16
# Predicion
predicciones <- predict(modelo1, newdata = entrenamiento)
predicciones
## 1 2 3 4 5 6
## 15.95220337 12.16316619 17.43888522 14.08362299 11.12837356 13.43146065
## 7 8 9 10 11 12
## 9.42695634 6.09557572 7.53534399 13.20518841 12.19672986 12.11147421
## 13 14 15 16 17 18
## 14.08294615 15.00538275 -2.05479582 16.62160920 15.21319069 16.13191542
## 19 20 21 22 23 24
## 3.40535269 16.62899141 14.60526631 -1.50321145 7.25483132 6.86739109
## 25 26 27 28 29 30
## 16.14467656 10.33768088 0.07218776 15.87633857 9.16739143 12.42989430
## 31 32 33 34 35 36
## 6.57610323 10.99538047 9.52640302 14.52047760 17.14061146 13.74941692
## 37 38 39 40 41 42
## 10.69981739 11.80726745 9.33655462 12.13593984 16.75020084 6.84424449
## 43 44 45 46 47 48
## 8.74038826 5.13817462 6.34212053 12.08509574 3.47951673 4.62531721
## 49 50 51 52 53 54
## 9.29245743 7.09742013 10.39299697 14.93916423 8.33389520 -1.14986552
## 55 56 57 58 59 60
## 16.83798752 2.77118853 19.21958934 8.27561365 11.92017771 7.58884497
## 61 62 63 64 65 66
## 11.91321587 10.56029887 14.96915421 9.45795107 13.00944337 12.61358488
## 67 68 69 70 71 72
## 5.29416448 9.86783445 7.79563157 8.19048977 13.11689825 11.63967374
## 73 74 75 76 77 78
## 7.37655021 11.40409046 9.06248231 18.36896115 13.39444561 8.99976042
## 79 80 81 82 83 84
## 10.25369625 10.49058734 7.64994591 10.48514969 9.39615684 15.77184912
## 85 86 87 88 89 90
## 15.36043049 10.05858044 10.38533918 8.30162832 6.29354684 12.18031965
## 91 92 93 94 95 96
## 14.29292036 9.88328759 6.95494056 14.08767737 9.79306229 10.50309315
## 97 98 99 100 101 102
## 10.90468145 4.90300372 6.38167724 9.61811964 10.50805097 9.59827499
## 103 104 105 106 107 108
## 15.63452523 8.79313608 14.16678215 14.47215071 12.70923176 11.65059654
## 109 110 111 112 113 114
## 18.18986905 12.98938972 9.15761753 10.66177311 8.88544954 13.09861004
## 115 116 117 118 119 120
## 8.79396339 10.36549488 9.30421118 15.25008646 6.10388237 6.63270225
## 121 122 123 124 125 126
## 9.74930041 18.09434627 12.93926436 11.48826143 11.94653326 12.39650898
## 127 128 129 130 131 132
## 15.65222314 5.06223673 13.48298234 6.65417903 11.63879084 12.22519237
## 133 134 135 136 137 138
## 9.88482998 12.26331190 7.64028572 5.87319380 11.74407986 11.55116519
## 139 140 141 142 143 144
## 13.07182159 8.46510549 10.87709913 14.47395051 14.05784008 10.56901760
## 145 146 147 148 149 150
## 11.34058495 9.21982358 14.66693578 8.35650824 20.06032283 9.08859149
## 151 152 153 154 155 156
## 16.99852377 14.62769646 16.14309642 12.86904182 7.25919813 16.17526022
## 157 158 159 160 161 162
## 10.34285647 14.12607422 10.39071909 10.25150273 13.37967449 15.67213351
## 163 164 165 166 167 168
## 11.03200804 8.98821913 9.19928320 9.07932977 8.15221132 12.13265242
## 169 170 171 172 173 174
## 12.72264119 14.84093365 10.98657417 7.80843996 6.11295995 8.99227629
## 175 176 177 178 179 180
## 11.49136187 7.22031796 7.27047223 11.41178794 7.01302999 11.93363497
## 181 182 183 184 185 186
## 9.00119394 4.57177466 13.76333334 8.36086638 17.46759240 9.07296693
## 187 188 189 190 191 192
## 8.15644402 7.63173030 14.87934367 12.24164082 5.81167769 9.75472510
## 193 194 195 196 197 198
## 3.71948685 8.22169753 11.74524611 7.75902562 4.65151411 11.90887656
## 199 200 201 202 203 204
## 12.81545492 9.57435455 9.78846750 9.92226312 10.14636273 12.46362422
## 205 206 207 208 209 210
## 8.76417495 4.02051926 16.50410582 8.24632067 14.84082631 4.49450300
## 211 212 213 214 215 216
## 10.78592925 18.19161831 11.62467677 5.03913372 18.85235965 15.35627355
## 217 218 219 220 221 222
## 9.93984859 6.06807023 9.91479465 7.59535100 17.95561000 5.16628262
## 223 224 225 226 227 228
## 15.05222273 7.23135167 15.48278040 2.32345307 13.50618645 0.26745395
## 229 230 231 232 233 234
## 15.78981945 6.15824382 6.59386766 13.76207481 13.40375107 4.19263326
## 235 236 237 238 239 240
## 12.16356776 6.95034039 12.54749817 13.06695878 15.91990841 19.24150747
## 241 242 243 244 245 246
## 8.87604317 0.33417152 6.32432033 3.45618927 11.43003498 2.16227121
## 247 248 249 250 251 252
## 4.99871685 18.39940448 10.00126237 9.07558540 18.60028495 12.16453987
## 253 254 255 256 257 258
## 8.65970349 5.84915402 15.04264524 9.44360650 10.74698716 11.31606316
## 259 260 261 262 263 264
## 10.58726412 11.64961953 8.63440018 5.66537159 8.45438861 7.94383569
## 265 266 267 268 269 270
## 9.83648268 7.35082783 14.23954307 15.80825795 8.98799517 -1.07980656
## 271 272 273 274 275 276
## -1.00133981 10.34011162 8.77065698 14.08139786 6.14978888 -0.48190596