Você está na página 1de 9

REGRESION LINEAL SIMPLE

Rebeca Duenas Alarcon


20 de mayo de 2015

I. Introduccion

En esta artculo aprenderemos a utilizar R como herramienta para la estimacion y ana-


lisis de modelos de regresion. La situacion general es la siguiente. Disponemos de una
variable aleatoria respuesta Y, que supondremos relacionada con otra variable X, que
llamaremos explicativa o independiente. A partir de una muestra de n individuos para
los que se dispone de los valores de ambas variables, (Xi , Yi ), i = 1,. . . ,n , podemos
visualizar graficamente la relacion existente entre ambas. As, utilizando la funcion plot
de R podemos realizar un grafico de dispersion, en el que los valores de la variable X
se disponen en el eje horizontal y los de Y en el vertical. En la Figura 1 se muestran
ejemplos de graficos de dispersion.

Que conclusiones podras sacar a partir de las graficas sobre la relacion entre las
variables X e Y en cada ejemplo?

Los puntos (Xi , Yi ) de la grafica (a) han sido generados a partir del modelo lineal
Yi =a+bXi +i , con i N (0, 2 ). Sabras decir a que se debe que casi no se apre-
cie la relacion lineal? Aunque los datos han sido generado a partir de la ecuacion
de una recta, el error e que hemos introducido tiene una varianza muy grande. Eso
hace que los datos aparezcan tan dispersos.

Existe relacion lineal entre las variables X e Y representadas en la grafica (b)?.


Que tipo de relacion crees que existe?

En la grafica (c), los puntos (Xi , Yi ) han sido generados a partir del modelo lineal
Yi =a+bXi + i , pero con errores heterocedasticos, es decir, la varianza del error
no es constante.

En la graficas (d) y (e), los puntos (Xi , Yi ) han sido generados a partir del modelo
lineal Yi =a+bXi +i , con i N (0, 2 ). En que se diferencian ambos ejemplos?

1
Figura 1: Ejemplos de graficos de dispersion

La practica consistira en:

1. Simular el modelo de regresion Yi =a + bXi + .


2. Dibujar Y frente a X.
3. Estimar el modelo de regresion: funcion lm.
4. Analizar el modelo estimado: funcion summary.

2
II. Simulacion de observaciones
En la mayora de situaciones practicas toda la informacion de la que disponemos esta en
las observaciones muestrales. No tenemos ninguna informacion sobre el modelo subya-
cente y lo unico que podemos hacer es asumir que los datos se ajustan a un determinado
modelo y estimarlo. La ventaja al hacer simulacion es que somos nosotros mismos los
que generamos los datos y tenemos control sobre el modelo subyacente. Esto nos permite
comparar los resultados obtenidos al estimarlo.

# Parametros del modelo


# y=ax+b+eps
>n=100
>a=2
>b=3
>desv=0.2
# Simulamos el modelo
>eps=rnorm(n,sd=desv)
>x=runif(n)
>y=a+b*x+eps
# Grafico de dispersion
>par(cex=0.6)
>plot(x,y)

3
5.0
4.5
4.0
y

3.5
3.0
2.5
2.0

0.0 0.2 0.4 0.6 0.8 1.0

III. Estimacion del modelo


La funcion de R que nos premite estimar un modelo de regresion lineal es la funcion lm.
La forma de invocar a la funcion para estimar un modelo de regresion lineal simple es
lm(yx). Puedes consultar la ayuda de la funcion para ver todas las posibilidades que
ofrece. Para nuestro ejemplo, obtenemos:

>lm(yx)

Call:
lm(formula = y ~ x)

Coefficients:
(Intercept) x
1.984 3.062

Como puedes comprobar, los valores obtenidos son las estimaciones de los coeficientes
de la recta de regresion a y b.

4
Sxy
x = (1)
Sx3

a = Y bX (2)

siendo

n
1 X
Sxy = (Xi X )(Yi Y ) (3)
N
i=1

n
1X
Sx2 = (Xi X )2 (4)
n
i=1

Efectivamente,

>cov(x,y)/var(x)

[1] 3.062492

>mean(y)-cov(x,y)/var(x)*mean(x)

[1] 1.983602

que coinciden con los valores obtenidos por medio de la funcion lm. En lugar de invocar
simplemente la funcion podemos guardar su resultado en una variable y veremos as que
obtenemos mas informacion.

>reg=lm(yx)
>names(reg)

[1] "coefficients" "residuals" "effects" "rank"


[5] "fitted.values" "assign" "qr" "df.residual"
[9] "xlevels" "call" "terms" "model"

Ademas de los coeficientes estimados, R devuelve tambien los residuos estimados


ei = Yi (a + bXi ), los grados de libertad de los residuos, los valores de Yi = a + bXi , . . .

>reg$residuals

5
1 2 3 4 5
0.1670044755 0.2115448974 -0.0424680239 0.0221858118 -0.0427839637
6 7 8 9 10
-0.0911578760 -0.1270894725 -0.2626816739 0.5375460233 0.2118240116
11 12 13 14 15
-0.0259438309 -0.1479223424 -0.4270177424 0.0074735749 -0.0750481347
16 17 18 19 20
-0.0778967039 -0.0796074562 0.1347819247 0.0153648203 0.0567489368
21 22 23 24 25
-0.1253677636 0.3366289936 0.0753403313 -0.1741803320 0.2959502319
26 27 28 29 30
0.0309115663 0.4070494022 0.1973143893 0.0931817564 -0.2133585992
31 32 33 34 35
0.1788590083 -0.1467511633 -0.4394974277 -0.1180103713 -0.0579498294
36 37 38 39 40
0.0045715728 0.3100355699 -0.2540439606 0.3463963632 -0.1093981770
41 42 43 44 45
0.0604952796 0.1226834602 0.3954996373 -0.3661623065 0.3222550579
46 47 48 49 50
-0.3153138581 -0.0249142140 -0.0659877449 0.1152622052 -0.0155383285
51 52 53 54 55
-0.1822648242 0.2367707603 -0.2556040719 -0.3367598207 -0.2596546007
56 57 58 59 60
0.3385785046 0.0127383495 -0.0019940164 -0.5091479586 -0.0565915896
61 62 63 64 65
0.1269897502 0.0406390868 0.2330817533 -0.2863196905 0.0751710189
66 67 68 69 70
-0.1161051726 0.0634794280 0.2594227177 -0.2056175432 -0.0341756162
71 72 73 74 75
-0.0828657676 0.2052919369 0.0910734020 -0.2294923303 0.0032764542
76 77 78 79 80
-0.1943402073 0.3233322804 0.1096754353 0.0492558915 0.3235928681
81 82 83 84 85
0.0133755903 0.0162464580 -0.2679659279 -0.3387980597 -0.3324403386
86 87 88 89 90
0.1117215918 -0.1717647640 0.1705475927 0.0776157528 -0.3280079457
91 92 93 94 95
-0.0838783421 0.0004036456 -0.1159847600 0.0192777624 -0.1451927161
96 97 98 99 100
0.0483924595 -0.0176541314 0.3141034751 0.1115041762 0.3462440482

>reg$fitted.values

1 2 3 4 5 6 7 8
2.153970 4.877302 3.268200 3.321227 3.491652 2.387270 2.256104 4.159613
9 10 11 12 13 14 15 16

6
4.651554 4.483264 3.859581 3.878787 3.646527 2.417421 4.492436 2.068491
17 18 19 20 21 22 23 24
2.788610 2.705411 3.614523 4.662858 3.616637 3.281228 3.641806 2.587200
25 26 27 28 29 30 31 32
3.952656 4.907887 3.128522 2.923181 4.262700 2.144681 4.629252 3.365663
33 34 35 36 37 38 39 40
4.872499 4.556767 2.641162 3.920404 4.972030 2.307538 3.699039 4.080969
41 42 43 44 45 46 47 48
2.292907 3.890626 2.788497 3.862544 2.675096 4.879163 3.171567 4.630388
49 50 51 52 53 54 55 56
3.939028 3.713515 2.428027 2.106930 3.165063 2.285302 2.231897 2.312526
57 58 59 60 61 62 63 64
2.885984 3.330638 3.906531 4.991676 2.924303 4.708307 2.241924 4.644260
65 66 67 68 69 70 71 72
3.436471 3.815191 3.344424 2.822427 4.449442 2.543846 3.612328 4.912190
73 74 75 76 77 78 79 80
2.100613 2.711212 4.358789 4.844359 4.063942 3.472478 2.591569 3.144429
81 82 83 84 85 86 87 88
3.436754 3.358579 2.136600 2.980681 2.849987 2.245477 4.785521 4.314025
89 90 91 92 93 94 95 96
4.613207 2.498301 4.832290 5.033170 3.535465 2.649233 3.872137 4.272615
97 98 99 100
2.216415 2.902705 4.848318 2.797079

>reg$df.residual

[1] 98

IV. Analisis del modelo


Para realizar el analisis del modelo estimado utilizaremos la funcion summary. As

>summary(reg)

Call:
lm(formula = y ~ x)

Residuals:
Min 1Q Median 3Q Max
-0.50915 -0.13162 0.00392 0.12376 0.53755

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.98360 0.04142 47.90 <2e-16 ***
x 3.06249 0.07207 42.49 <2e-16 ***
---

7
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.2138 on 98 degrees of freedom


Multiple R-squared: 0.9485, Adjusted R-squared: 0.948
F-statistic: 1805 on 1 and 98 DF, p-value: < 2.2e-16

Obtenemos asinformacion sobre los residuos estimados, los contrastes de regresion


H0 :a= 0, H0 :b= 0, el coeficiente de determinacion,. . .

A la vista de los resultados:

Podemos rechazar la hipotesis nula H0 : a = 0. Asimismo rechazamos la hipotesis


nula H0 : b = 0. Es razonable si tenemos en cuenta que hemos generado la muestra a
partir del modelo con a = 2 y b = 3. Que ocurre si repetimos la practica generando
los datos a partir del modelo con a = 0? Cual es el p-valor del estadstico de
contraste en ese caso?
El coeficiente de determinacion en el modelo de regresion lineal simple coincide con
el coeficiente de correlacion al cuadrado, es decir:

Sx 2y
R2 = (5)
Sx2 Sy2

Lo podemos comprobar mediante:

>cov(x,y)2 /(var(x) var(y))

[1] 0.9485157

De manera informal, el coeficiente de determinacion nos sirve para decidir si el


modelo de regresion lineal explica bien los datos o no. En nuestro caso es natural
obtener un valor alto del coeficiente de determinacion, pues los datos han sido ge-
nerados a partir de un modelo lineal.

Como afecta el tamano de muestra a las estimaciones?. Y la varianza del error


2 ?.

Tambien podemos hacer un grafico con la recta de regresiestimada y la recta original a partir
de la cual se ha generado la muestra.

8
Figura 2: Ejemplos de graficos de dispersion

Se representan la recta Y = 2 + 3X a partir de la que hemos generado los datos anadiendo


el error y la recta de regresion estimada Y = a + bX . En la grafica de la izquierda n = 100 y
en la de la derecha n = 50.

Você também pode gostar