Está en la página 1de 16

  

  
  
 
Universidad de la Sabana  
  
  
  
 
Probabilidad y Estadística II  
 
  
  
Transformación lineal   
  
 
 
 
  
Profesor: Adrián Alberto Santana Alfonso  
  
  
  
Presentada por:

Juan José Girón Núñez


Introducción.

En el siguiente informe se hará un análisis a un modelo hecho a partir de una base de datos,
en la cual se hablará sobre los supuestos que dicho modelo debe de cumplir para que este
pueda ser no un modelo que sólo describa la base datos, si no que a su vez pueda ser un
modelo con el que se pueda predecir.

Planteamiento del problema.

Se tiene una base de datos las cuales cuentan con dos variables una llamada math10 la cual
expresa el porcentaje de estudiantes que aprueban el examen estandarizado de matemáticas
en el primer año de escuela y durante este informe la llamaremos como variable “Y”, y
como segunda variable se tiene lnchprg la cual expresa el porcentaje de estudiantes
beneficiados con el programa de desayunos escolares la cual en este informe la llamaremos
como la variable “X”. Se desea estimar el efecto de desayunos escolares sobre el
desempeño de los estudiantes. El modelo de regresión a trabajar es el siguiente.

math 10=B0 + B1 lnchprg+ε

Antes de dar inicio para saber si se cumple cada supuesto, se hizo la construcción del
modelo y un breve análisis de este. Para la construcción del modelo se empleó la función
lm. A continuación, se muestra el código hecho en R con su respectivo resultado.

modelo= lm(math10~lnchprg, data = meap93)


modelo
Call:
lm(formula = math10 ~ lnchprg, data = meap93)

Coefficients:
(Intercept) lnchprg
32.1427 -0.3189

Se obtuvo que el coeficiente B0=32.1427 y B1=−0.3189 por lo que se puede decir que hay
una relación negativa entre el porcentaje de estudiantes beneficiados con el programa de
desayunos escolares y el porcentaje de estudiantes que aprueban el examen estandarizado
de matemáticas.

Después de construir el modelo de regresión lineal, se procedió a hacer un breve análisis


acerca de este en el cual incluye un análisis del ANOVA. A continuación, se muestra el
código hecho en R y sus respectivos resultados.

Call:
lm(formula = math10 ~ lnchprg, data = meap93)

Residuals:
Min 1Q Median 3Q Max
-24.386 -5.979 -1.207 4.865 45.845

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 32.14271 0.99758 32.221 <2e-16 ***
lnchprg -0.31886 0.03484 -9.152 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 9.566 on 406 degrees of freedom


Multiple R-squared: 0.171, Adjusted R-squared: 0.169
F-statistic: 83.77 on 1 and 406 DF, p-value: < 2.2e-16

Con los resultados del programa R, podemos sacar varias conclusiones. La primera de las
conclusiones es que ambos coeficientes son significativos, es decir, estos son diferentes a 0,
esto debido al valor P de la prueba de hipótesis que nos da el programa. Por otro lado,
también se puede ver datos a cerca de los residuales donde la media de estos no es 0
estadísticamente, esto se comprará después en unos de los supuestos. Por otro lado, se tiene
que el R2 el cual es un porcentaje, el porcentaje de varianza explicada por el modelo. Este
R2 es un valor muy bajo, normalmente se dice que un buen modelo explica en un 80% o
más la varianza.

Como último, tenemos el análisis del ANOVA. A continuación, se muestra el código hecho
en R con su respectivo código.

anova(modelo)
Analysis of Variance Table

Response: math10
Df Sum Sq Mean Sq F value Pr(>F)
lnchprg 1 7665 7665.3 83.767 < 2.2e-16 ***
Residuals 406 37152 91.5
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Del código hecho en R acerca de ANOVA se puede concluir que el parámetro B1 es


significativo.

Supuesto 1.

El supuesto 1 exige que el modelo a trabajar debe tener parámetros lineales. Para poder
trabajar el supuesto número uno se debe tener en cuenta el modelo que el problema nos da a
trabajar el cual ya se mostró anteriormente. Observando dicho modelo se logra identificar
que los parámetros B1 y B0 son lineales. Teniendo en cuenta lo anterior, se puede decir que
el supuesto 1 se cumple.

Supuesto 2.

El supuesto 2, trata acerca de los residuales del modelo de regresión y la variable X. Para
que este supuesto se pueda cumplir la covarianza entre la variable X y los residuales de
modelo debe ser 0, para poder comprobar la independencia entre las dos variables se
realizaron tres análisis. El primer análisis consiste en ver el comportamiento (mediante un
gráfico) de los residuales en función de la variable X. Mediante la función plot del
programa R se realizó el primer análisis, el código y el gráfico se mostrarán a continuación.

Residuales= modelo$residuals
plot(lnchprg,Residuales)

Gráfico 1

La conclusión que se puede sacar del Gráfico 1 es que los residuales del modelo y la
variable X gráficamente no siguen ningún patrón, por lo que se puede decir que los
residuales y X son independientes. En conclusión, gráficamente los residuales y X tienen
covarianza 0.

Siguiendo lo estipulado se hace el segundo análisis, el cual trata de sacar la covarianza


entre los residuales del modelo y la variable X, en donde la covarianza debe tener un valor
exacto de 0 para que se pueda decir que los residuales y X son totalmente independientes,
para este segundo análisis se utilizó la función “cov” del programa R, el código y sus
resultados se muestran a continuación.

cov(lnchprg,Residuales)
[1] 1.015193e-15
Como se puede observar, el valor de la covarianza entre los residuales del modelo y la
variable X es muy pequeño, pero no es 0. Por lo cual se puede sacar la conclusión de que
los residuales y X no son independientes. Es importante tener en cuenta que la función
“cov” en R realiza la covarianza de los residuales y X con respecto a la muestra, por esta
misma razón se hace un tercer análisis.

Por último, se hace el tercer el análisis el cual trata de hacer una prueba de hipótesis, para
ser más precisos, se hace la prueba de DURBIN WATSON. Para esta prueba se debe tener
en cuenta que H o =covarianza=0 y H a=covarianza>0. Teniendo ya las hipótesis se
mostrará el código en R y su respectivo resultado.

dwtest(modelo$residuals~lnchprg)
Durbin-Watson test

data: modelo$residuals ~ lnchprg


DW = 1.9077, p-value = 0.1626
alternative hypothesis: true autocorrelation is greater than 0

Al no rechazar H o con un α del 5% y un α del 1%, se dice que no hay dependencia entre
los residuales y X. Es importante tener en cuenta que el medio más confiable para poder
decir si se cumple el supuesto dos es la prueba de DURBIN WATSON ya que esta hace
una inferencia acerca de la población. Como conclusión se obtiene que el supuesto 2 se
cumple.

Supuesto 3.

El supuesto 3 pide que la media de los residuales del modelo de regresión sean 0, esto se
debe a que todas las medias de cada X se deben compensar entre sí, dando como resultado
una media de 0. El análisis en este supuesto se hizo de forma sencilla utilizando la función
mean de R. A continuación, se mostrará el código empleado con su respectivo resultado.

MediaResiduales= mean(Residuales)
MediaResiduales
[1] -1.079068e-16

Como se puede observar, el valor de la media de los residuales no dio un número exacto a
0, pero en este caso esto no es un problema ya que estadísticamente −1.079068e-16 es 0.
Por lo tanto, se puede sacar como conclusión que el supuesto 3 se cumple.

Supuesto 4.

El supuesto 4 nos pide que para que este se pueda cumplir la varianza de los residuales
debe ser constante u homoscedástica. Para poder confirmar si este supuesto se cumple o no
se realizaron dos análisis, uno que es gráfico y el otro que es a través de una prueba de
hipótesis. Es importante tener en cuenta que las variables que trabajarán son los residuales
y los valores “Y” del modelo de regresión. Mediante la función plot del programa R se
realizó el primer análisis, el código y gráfico se muestra a continuación.

plot(modelo$fitted.values, modelo$residuals)

Gráfico 2

La conclusión que se puede sacar del primer análisis el cual consta en observar el gráfico,
se puede decir que las varianzas de los residuales por cada valor “Y” de modelo son
constantes.

Como segundo paso procedemos hacer el segundo análisis, el cual nos ayudará a tomar una
decisión final, para poder hacer dicho análisis se empleó la función bptest del programa R
el hace una prueba de hipótesis, donde H o =varianza=constante y
H a=varianza ≠ constante. El código y su respectivo resultado se muestra a continuación.

bptest(modelo)
studentized Breusch-Pagan test
data: modelo
BP = 1.3287, df = 1, p-value = 0.249

Al observar los resultados, nos da que el valor P tiene lo suficientemente grande para no
rechazar H o con un α del 5% y un α del 1%. Por lo que al igual que el Gráfico 2 se dice
que las varianzas son constantes. Como conclusión se dice que el supuesto 4 se cumple.

Supuesto 5.

El supuesto cinco trata de la correlación que debe existir entre los residuales. Como tal el
supuesto 5 exige que no exista correlación entre los residuales. Al igual que en supuesto
uno, en este caso se hicieron tres análisis, donde el primero se basa en el gráfico de
residuales vs residuales, como segundo punto se tiene el análisis de la covarianza que como
se mencionó anteriormente me dice a cerca de la dependencia de variable y por último se
tiene la prueba de hipótesis de DURBIN WATSON. A continuación, se mostrará el código
y el gráfico hecho en R para el primer análisis.

plot(modelo$residuals,modelo$residuals)

Gráfico 3

Al ver el gráfico de los residuales se puede ver que entre ellos hay un tipo de relación clara
y en este caso puede ser muy específica ya que se ve una tendencia lineal positiva.

Como segundo paso, se procede a la aplicación de la función “cov” del programa R.


cov(modelo$residuals,modelo$residuals)
[1] 91.28235

Al ver los resultados podemos apoyar la conclusión que se llevaba con el primer análisis y
es que los residuales entre si tienen una dependencia. A comparación del análisis anterior,
en este segundo análisis no podemos saber el tipo de tendencia que hay entre los residuales.

Como último paso se realizó la prueba de hipótesis de DURBIN WATSON, el único


cambio que hay entre la prueba hecha en el supuesto uno y el supuesto 5 son sus variables.
A continuación, se mostrará el código en R con su respectivo resultado.

dwtest(modelo$residuals~modelo$residuals)
Durbin-Watson test

data: modelo$residuals ~ modelo$residuals


DW = 1.9077, p-value = 0.1751
alternative hypothesis: true autocorrelation is greater than 0

Como el valor P de la prueba de hipótesis es mayor que un α del 5% y un α del 1%


podemos llegar a la conclusión de que no se rechaza la hipótesis nula, es decir, la
covarianza entre los residuales es 0 lo que nos indica que no hay dependencia entre ellas.
En conclusión, el supuesto 5 se cumple.

Supuesto 6.

En este supuesto tenemos que comprobar que la cantidad de parámetros sea menor que la
cantidad de datos que se tiene, esto con el fin que se puedan obtener no sólo buenos
resultados también sirve para que nuestro modelo sea más confiable. Inicialmente tenemos
que sólo contamos con dos parámetros los cuales son B0 y B1, por otro lado, cada variable
en la base de datos tiene 408 datos. En conclusión, la cantidad de parámetros es menor que
la cantidad de datos por lo que el supuesto 6 se cumple.

Supuesto 7.

Para el supuesto 7 se debe cumplir que exista variación suficiente de la variable, esto con el
fin de poder mejorar la estructura del modelo y que a su vez el modelo no sea construido en
base a sólo un valor de la variable X. Para poder comprobar si se cumple el supuesto siete
se emplea la función de “var” en R la cual me calcula la varianza de una variable (en este
caso es X). A continuación, se muestra el código en R con su resultado.

VarX= var(lnchprg)
VarX
[1] 185.2342

Al analizar los resultados que dio el programa R se puede llegar a la conclusión de que la
varianza que hay en la variable X es mayor que 0. Por lo tanto, el supuesto 7 se cumple.
Supuesto 8.
En el supuesto 8 se tiene que analizar que no hay colinealidad exacta entre las variables de
X, es decir, que en una sola X no estén expresados todos los resultados de Y. Para
identificar si este supuesto se cumple simplemente se hizo en análisis del gráfico del
modelo. A continuación, se muestra el código hecho en R y su respectivo resultado.

plot(lnchprg,math10)

Gráfico 4

Observando los resultados del comportamiento de la variable Y en función de la variable X,


se observa que puede existir colinealidad, pero esta no es exacta, de hecho, está muy lejano
de que se de una linealidad exacta. En conclusión, el supuesto 8 se cumple.

Supuesto 9.

En el supuesto 9 se debe hacer un análisis en la forma de la función. En este supuesto se


pide que no existan sesgos de especificación, es decir, no se puede modificar el modelo a
menos que sea algebraicamente. Tenemos que el modelo es math 10=Bo + B1 lnchprg donde
se puede observar claramente que no existe ningún sesgo. En conclusión, el supuesto 9 se
cumple.

Supuesto 10.
Para que el supuesto 10 se cumpla se exige que la distribución que tienen los residuales
sean normales. Para poder confirmar si este supuesto se cumple se realizaron dos análisis
los cuales tratan de un análisis gráfico y un análisis a través de una prueba de bondad de
ajuste. Para el análisis gráfico se realizó un histograma de frecuencias usando la función
“hist” del programa R. A continuación, se muestra el código en R con su respecto resultado.

hist(modelo$residuals)

Gráfico 5

De los resultados del gráfico se puede observar que los residuales tienden a tener una
distribución normal, pero está no tiene bien la forma de campana, por lo tanto, se puede
decir que no sigue una distribución normal.

Ahora, se realizará el segundo análisis el cual cosiste en una prueba de bondad de ajuste. La
prueba de bondad de ajuste se hará con la función shapiro.test. Es de importancia aclarar
que para esta prueba tenemos que H 0=ε=normal y H a=ε ≠ normal A continuación, se
muestran el código hecho en R con su respectivo resultado.

shapiro.test(modelo$residuals)
Shapiro-Wilk normality test
data: modelo$residuals
W = 0.96119, p-value = 6.582e-09

Ya con la prueba de bondad de ajuste se rechaza H 0 tanto con un α del 1% y un α del 5%.
En conclusión, los residuales no cumple una distribución normal, por lo tanto, el supuesto
10 no se cumple.

Al hacer el análisis de todos los supuestos se logra identificar que sólo uno de ellos no se
cumple por lo cual es necesario hacer un cambio en el modelo para que se pueda dar la
normalidad en los residuales. Por otro lado, otro de los objetivos del análisis es poder tener
una varianza explicada mayor para poder tener un buen modelo de regresión lineal.

Transformación del modelo.

La transformación del modelo de regresión lineal se hace con el fin de poder mejorar el
modelo, ya sea cumpliendo ciertos supuestos que no cumplía anteriormente o por mejorar
factores como la varianza explicada, significancia en los parámetros, varianza del modelo,
etc. La transformación del modelo se hizo mediante el modelo de regresión box cox, para
poder realizar el modelo de regresión de box cox se empleó la función box cox del
programa R. A continuación, se muestra el código empleado en R y su respectivo resultado.

> bc= boxcox(math10~lnchprg,data= meap93, lambda = seq(-1,1, len= 20))


> Mejorlambda= bc$x[which(bc$y==max(bc$y))]
> Mejorlambda
[1] 0.4747475
> ModeloNuevo= lm(math10^(0.4747475)~lnchprg, data = meap93)
> ModeloNuevo

Al tener ya un lambda definido podemos hacer la transformación del modelo de regresión


lineal. Teniendo en cuenta los resultados, el modelo de regresión lineal quedaría de la
siguiente manera.

math 100.4747475=5.20123−0.03103∗lnchprg

Ahora bien, para poder comprobar que cambios se dieron por el cambio de modelo y si son
los suficientes para poder ser un buen modelo de regresión lineal. Primero se hará un
análisis breve del nuevo modelo y luego se verán los supuestos. A continuación, se muestra
los resultados del summary.

summary(ModeloNuevo)

Call:
lm(formula = math10^(0.4747475) ~ lnchprg, data = meap93)

Residuals:
Min 1Q Median 3Q Max
-3.1646 -0.5190 -0.0164 0.4962 3.2424

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 5.201225 0.089138 58.350 <2e-16 ***
lnchprg -0.031030 0.003113 -9.968 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.8548 on 406 degrees of freedom


Multiple R-squared: 0.1966, Adjusted R-squared: 0.1946
F-statistic: 99.35 on 1 and 406 DF, p-value: < 2.2e-16

Analizando los resultados del summary del nuevo modelo con el del antiguo se puede notar
ciertas diferencias como en el valor del R2 que del 17.1% pasó al 19.66%. Aun así, esta
diferencia no es suficiente para decir que hay un buen modelo. En el apartado de los
coeficientes se mantuvo el mismo resultado lo cual significa que siguen siendo
significativos los coeficientes. Como último la varianza del modelo nuevo es menor que la
del antiguo, pasando de 9.566 a 0.8548.

Supuesto 1.

El supuesto 1 se sigue cumpliendo debido a que sus parámetros cambiaron pero siguen
siendo lineales.

Supuesto 2.

Residuales= ModeloNuevo$residuals
> plot(lnchprg,Residuales) #Graficamente se ve que no hay relacion entre la variable x
y los residuales
> cov(lnchprg,Residuales) # La funcion me dice que si hay una covarianza entre x y
los residuales- No se cumple el supuesto 2
[1] -5.289159e-16
> dwtest(ModeloNuevo$residuals~meap93$lnchprg)

Durbin-Watson test

data: ModeloNuevo$residuals ~ meap93$lnchprg


DW = 1.9156, p-value = 0.1829
alternative hypothesis: true autocorrelation is greater than 0
Analizando y comparando el supuesto dos de ambos modelos podemos sacar tres aspectos.
El primero es que gráficamente se sigue sacando la misma conclusión en la que se
evidencia de los residuales y la variable X no tienen ninguna relación entre sí, es decir, son
independientes, como segundo tenemos la covarianza entre el modelo antiguo y el nuevo
donde en ambos casos no da cero, lo que significa que los residuales y la variable x tienen
una relación, es decir, no son independientes, por último y más importante está la prueba de
DUBIN WATSON donde en ambos casos no se rechaza la hipótesis nula lo que quiere
decir que los residuales y la variable x no tienen ninguna relación, es decir, son
independientes. En conclusión, el supuesto se cumple.

Supuesto 3.

MediaNueva= mean(ModeloNuevo$residuals)
> MediaNueva
[1] 3.429241e-17

Como resultado, en este tercer supuesto tenemos una media de los residuales
estadísticamente igual a 0, por lo tanto, el supuesto 3 se sigue cumpliendo.

Supuesto 4.

plot(ModeloNuevo$fitted.values, ModeloNuevo$residuals)
> bptest(ModeloNuevo)

studentized Breusch-Pagan test

data: ModeloNuevo
BP = 0.77872, df = 1, p-value = 0.3775
Al igual que en modelo anterior, se obtiene un gráfico el cual indica que las varianzas son
constantes para X. Este supuesto se pudo rectificar mediante la función bptest donde se ve
que el valor P supera el 1% y el 5%, por lo tanto, el supuesto 4 se sigue cumpliendo.

Supuesto 5.

plot(ModeloNuevo$residuals,ModeloNuevo$residuals) #Hay una tendencias positiva


> cov(ModeloNuevo$residuals,ModeloNuevo$residuals)
[1] 0.7288114
> dwtest(ModeloNuevo$residuals~ModeloNuevo$residuals)

Durbin-Watson test

data: ModeloNuevo$residuals ~ ModeloNuevo$residuals


DW = 1.9156, p-value = 0.1964
alternative hypothesis: true autocorrelation is greater than 0
Para este nuevo modelo se puede ver que gráficamente hay una relación y dependencia
entre los residuales como pasó con el modelo antiguo, por el apartado de la covarianza se
logra observar una covarianza mucho menor, igualmente no logra ser cero. Por último, se
tiene la prueba de DURBIN WATSON la cual nos da un valor P de 0.1964 con lo que se
puede concluir que no se rechaza la hipótesis nula. En conclusión, el supuesto 5 se cumple.

Supuesto 6.

Al hacer una transformación en el modelo no varía la cantidad de datos y tampoco la


cantidad de parámetros, por lo tanto, el supuesto 6 se cumple.

Supuesto 7

VarXNuevo= var(lnchprg)
> VarXNuevo
[1] 185.2342

El valor de la varianza de la variable X nos da un valor suficientemente grande. En


conclusión, el supuesto 7 se cumple.

Supuesto 8.

plot(lnchprg,math10^(0.4747475))

Observando el gráfico del nuevo modelo se puede decir que es muy similar al del modelo
antiguo, donde evidentemente no se ve colinealidad. En conclusión, el supuesto 8 se sigue
cumpliendo.

Supuesto 9.
Al hacer una transformación del modelo de regresión lineal esto no significó que se hizo
algún sesgo, ya que la transformación se hizo algebraicamente. En conclusión, el supuesto
9 se sigue cumpliendo.

Supuesto 10.

hist(ModeloNuevo$residuals)
> shapiro.test(ModeloNuevo$residuals)

Shapiro-Wilk normality test

data: ModeloNuevo$residuals
W = 0.99398, p-value = 0.1062

El histograma del modelo nuevo si parece indicar una mejor imagen de distribución normal
de los residuales, mucho mejor que el modelo antiguo, apoyado con la prueba de bondad de
ajuste de shapiro se puede que ahora los residuales tienen distribución normal. Por lo tanto
el supuesto 10 se cumple.

Conclusión:

El modelo de regresión lineal mejoró, pero esta mejora no fue suficiente. Basados en los
datos que salen del nuevo modelo de regresión no consideraría este modelo como un
modelo que pueda predecir la variable Y.

También podría gustarte