Sunteți pe pagina 1din 12

Juan Manuel lujan Vargas

Practica de regresión lineal y polinomial


Ejercicio 1
Tenemos los siguientes datos de un inventario

Diametro Altura Volumen

6.6 8.9 0.017


6.8 7.95 0.017
7 6.87 0.014
7.1 12.7 0.027
7.5 11.74 0.028
9.9 13.84 0.066
10.8 15.25 0.049
11.2 13 0.058
11.3 14.6 0.066
11.7 15.6 0.083
12.6 17.2 0.1
14 16.6 0.127
14.3 17.87 0.158
14.6 17.9 0.141
14.9 16.5 0.132
15 18.3 0.153
15.3 17.4 0.162
15.4 17.55 0.139
16.2 16.99 0.192
17.1 17.72 0.158
17.4 16.2 0.196
18 16.1 0.197
18.1 15.34 0.25
19.2 16.15 0.203
19.8 14.38 0.262
20.6 22 0.317
22.5 20.6 0.377
23.5 16.7 0.263
23.8 22.8 0.395
32.6 21.55 0.603

datos<-read.csv("tectona.csv", head=T, sep = ";")


head(datos)
Diámetro Altura Volumen
1 6.6 8.9 0.017
2 6.8 7.95 0.017
3 7 6.87 0.014
4 7.1 12.7 0.027
5 7.5 11.74 0.028
6 9.9 13.84 0.066
attach(datos)
Hacemos nuestros respectivos gráficos de dispersión
plot(Volumen~Altura,pch=16,xlab="Volumen(m3)", ylab = "Altura(m)"
+ ,main="Regresion entre volumen y altura",col="blue")
> abline(model,col="green")

model<-lm(Volumen~Altura, data=datos)
> summary(model)

Call:
lm(formula = Volumen ~ Altura, data = datos)
Residuals:
Min 1Q Median 3Q Max
-0.10093 -0.06026 -0.02678 0.04186 0.28395

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.26612 0.07006 -3.798 0.00072 ***
Altura 0.02715 0.00430 6.315 7.86e-07 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.08643 on 28 degrees of freedom


Multiple R-squared: 0.5875, Adjusted R-squared: 0.5728
F-statistic: 39.89 on 1 and 28 DF, p-value: 7.864e-07

Interpretación

Podemos visualizar el modelo para la regresión lineal volumen = −0.126612+0.02715(altura), y los valores del
coeficiente de correlación nos da un porcentaje 58.75%. La altura aumenta 0.27 m por cada mes en la plantación
forestal. Y el volumen es -0.26 que es el origen de La ordenada que consume a diario la planta de la parcela forestal.
predict(model)
1 2 3 4 5 6
-0.02444593 -0.05024243 -0.07956899 0.07874010 0.05267205 0.10969591
7 8 9 10 11 12
0.14798336 0.08688637 0.13033312 0.15748733 0.20093408 0.18464155
13 14 15 16 17 18
0.21912741 0.21994203 0.18192613 0.23080372 0.20636492 0.21043806
19 20 21 22 23 24
0.19523170 0.21505427 0.17377986 0.17106444 0.15042724 0.17242215
25 26 27 28 29 30
0.12435919 0.33127433 0.29325842 0.18735697 0.35299770 0.31905493

residuals(model)
1 2 3 4 5 6
0.041445925 0.067242432 0.093568987 -0.051740102 -0.024672053 -0.043695910
7 8 9 10 11 12
-0.098983357 -0.028886367 -0.064333115 -0.074487333 -0.100934081 -0.057641551
13 14 15 16 17 18
-0.061127407 -0.078942034 -0.049926129 -0.077803721 -0.044364925 -0.071438058
19 20 21 22 23 24
-0.003231696 -0.057054275 0.022220136 0.025935558 0.099572763 0.030577847
25 26 27 28 29 30
0.137640812 -0.014274326 0.083741578 0.075643027 0.042002300 0.283945072

Realizar la regresión cuadrática y cubica (volumen-diámetro y altura y diámetro)


 plot(Diametro~Volumen,pch=16,xlab="Diametro(m)", ylab = "Volumen(m3)"
,main="Regresion entre diametro volumen",col="blue")

 plot(Diametro~Altura,pch=16,xlab="Diametro(m)", ylab = "Volumen(m3)"


,main="Regresion entre diametro Altura",col="blue")

Regresión cuadrática

model2<-lm(Volumen~Diametro+(Diametro^2), data=datos)
> summary(model2)

Call:
lm(formula = Volumen ~ Diametro + (Diametro^2), data = datos)

Residuals:
Min 1Q Median 3Q Max
-0.081315 -0.020684 -0.006809 0.026882 0.063030

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.160948 0.017105 -9.41 3.62e-10 ***
Diametro 0.021501 0.001053 20.43 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.03375 on 28 degrees of freedom


Multiple R-squared: 0.9371, Adjusted R-squared: 0.9349
F-statistic: 417.3 on 1 and 28 DF, p-value: < 2.2e-16

 En el siguiente modelo se observa la regression cuadratica volumen = -


0.160948+𝟎. 𝟎𝟐𝟏𝟓𝟎𝟏(diámetro) el diámetro aumenta cuando aumenta el volumen, y los valores del
coeficiente de correlación nos da un porcentaje de 93.71%.

model3<-lm(Altura~Diametro+(Diametro^2), data=datos)
> summary(model3)

Call:
lm(formula = Altura ~ Diametro + (Diametro^2), data = datos)

Residuals:
Min 1Q Median 3Q Max
-4.9364 -1.6047 0.7009 1.5245 3.4098

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 8.31479 1.16648 7.128 9.34e-08 ***
Diametro 0.49880 0.07178 6.949 1.48e-07 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.301 on 28 degrees of freedom


Multiple R-squared: 0.633, Adjusted R-squared: 0.6199
F-statistic: 48.29 on 1 and 28 DF, p-value: 1.484e-07
 En el siguiente modelo se observa la regression cuadratica altura =
8.31479 +𝟎. 𝟒𝟗𝟖𝟖𝟎(diámetro) el diámetro aumenta cuando aumenta el volumen.

model4<-lm(Volumen~Diametro+(Diametro^2)+I(Diametro^3), data=datos)
> summary(model4)

Call:
lm(formula = Volumen ~ Diametro + (Diametro^2) + I(Diametro^3),
data = datos)

Residuals:
Min 1Q Median 3Q Max
-0.077804 -0.016478 -0.000489 0.012417 0.061317

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -9.889e-02 2.304e-02 -4.293 0.000203 ***
Diametro 1.529e-02 2.002e-03 7.638 3.24e-08 ***
I(Diametro^3) 6.194e-06 1.787e-06 3.465 0.001786 **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.02859 on 27 degrees of freedom


Multiple R-squared: 0.9565, Adjusted R-squared: 0.9533
F-statistic: 296.7 on 2 and 27 DF, p-value: < 2.2e-16

 En el siguiente modelo se observa la regression cuadratica volume = -9.889+𝟏. 𝟓𝟐𝟗(diámetro) el


diámetro aumenta cuando aumenta el volumen en cubico a 6.194.
model5<-lm(Altura~Diametro+(Diametro^2)+I(Diametro^3), data=datos)
> summary(model5)

Call:
lm(formula = Altura ~ Diametro + (Diametro^2) + I(Diametro^3),
data = datos)

Residuals:
Min 1Q Median 3Q Max
-4.4845 -1.5052 0.6897 1.6239 2.7941

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 5.0591538 1.7076497 2.963 0.0063 **
Diametro 0.8246305 0.1483877 5.557 6.84e-06 ***
I(Diametro^3) -0.0003249 0.0001325 -2.453 0.0209 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.119 on 27 degrees of freedom


Multiple R-squared: 0.6999, Adjusted R-squared: 0.6776
F-statistic: 31.48 on 2 and 27 DF, p-value: 8.791e-08

 En el siguiente modelo se observa la regresión cuadrática altura = 5.05915+0.8246305(diámetro) e


l diámetro aumenta cuando aumenta el volumen, y los valores del coeficiente de correlación nos da u
n porcentaje de 70%.

Regresión cuadrática
Diámetro-altura

La primera gráfica (valores residuales vs. valores ajustados) es un simple diagrama de dispersión entre valores
residuales y valores predichos. Debería parecer más o menos aleatorio. Esto es más o menos lo que vemos aquí, con
la excepción de tres valores atípicos en la parte superior izquierda. La segunda gráfica (QQ normal) es una gráfica de
probabilidad normal . Dará una línea recta si los errores se distribuyen normalmente, pero los puntos 28, 27 y 30 se
desvían de la línea recta. El tercer gráfico (Escala-Ubicación), como el primero, debe parecer aleatorio. No hay
patrones. El nuestro no, tenemos un extraño patrón en forma de L. La última gráfica (la distancia de Cook) nos dice
qué puntos tienen la mayor influencia en la regresión (puntos de apalancamiento). Vemos que los puntos 27, 28 y 30
tienen gran influencia en el model.

Diámetro-volumen

En los gráficos de los residuos vemos que los datos no son del todo normales ya que se desvían ligeramente
de la diagonal en el Q-Q plot. También parece que los datos son ligeramente heterocedasticos, como indica el
grafico de residuos frente a valores predichos tanto asumir que nuestro modelo NO es normal.
Regresión cubica

Diámetro-altura

podríamos asumir que nuestro modelo no es normal, además de la heterocedasticidad que se manifiesta en el
gráfico de residuos frente a valores predichos.
jm<-read.csv("tectona2.csv",
head=T, sep = ",")
> head(junior)
Diametro. Altura. Altura

1 9.9; 13.84; 0.066

2 10.8; 15.25; 0.049

3 11.2; 13; 0.058

4 11.3; 14.6; 0.066

5 11.7; 15.6; 0.083

6 12.6; 17.2; 0.1


> summary(jm)
Diametro. Altura. Altura
10.8; 15.25; 0.049 : 1
11.2; 13; 0.058 : 1
11.3; 14.6; 0.066 : 1
11.7; 15.6; 0.083 : 1
12.6; 17.2; 0.1 : 1
14.3; 17.87; 0.158 : 1
(Other) :19

predict(model)
1 2 3 4 5 6
-0.02444593 -0.05024243 -0.07956899 0.07874010 0.05267205 0.10969591
7 8 9 10 11 12
0.14798336 0.08688637 0.13033312 0.15748733 0.20093408 0.18464155
13 14 15 16 17 18
0.21912741 0.21994203 0.18192613 0.23080372 0.20636492 0.21043806
19 20 21 22 23 24
0.19523170 0.21505427 0.17377986 0.17106444 0.15042724 0.17242215
25 26 27 28 29 30
0.12435919 0.33127433 0.29325842 0.18735697 0.35299770 0.31905493

residuals(model)
1 2 3 4 5 6
0.041445925 0.067242432 0.093568987 -0.051740102 -0.024672053 -0.043695910
7 8 9 10 11 12
-0.098983357 -0.028886367 -0.064333115 -0.074487333 -0.100934081 -0.057641551
13 14 15 16 17 18
-0.061127407 -0.078942034 -0.049926129 -0.077803721 -0.044364925 -0.071438058
19 20 21 22 23 24
-0.003231696 -0.057054275 0.022220136 0.025935558 0.099572763 0.030577847
25 26 27 28 29 30
0.137640812 -0.014274326 0.083741578 0.075643027 0.042002300 0.283945072

par(mfrow=c(2,2)) # nos dara dos graficos por fila y dos por columna
> plot(model)
Diámetro-volumen
La primera gráfica (valores residuales vs. valores ajustados) es un simple diagrama de dispersión entre
valores residuales y valores predichos qu no es normal. Debería parecer más o menos aleatorio. Esto
es más o menos lo que vemos aquí, con la excepción de tres valores atípicos en la parte superior
izquierda. La segunda gráfica (QQ normal) es una gráfica de probabilidad normal. Dará una línea recta
si los errores se distribuyen normalmente, pero los puntos superiores extremos se desvían de la línea
recta. El tercer gráfico (Escala-Ubicación), como el primero, debe parecer aleatorio. No hay patrones.
El nuestro no, tenemos un extraño patrón en forma de L. La última gráfica (la distancia de Cook) nos
dice qué puntos tienen la mayor influencia en la regresión (puntos de apalancamiento).

Eliminando 5 datos en cada variable

Diámetro Altura Altura


9.9 13.84 0.066
10.8 15.25 0.049
11.2 13 0.058
11.3 14.6 0.066
11.7 15.6 0.083
12.6 17.2 0.1
14 16.6 0.127
14.3 17.87 0.158
14.6 17.9 0.141
14.9 16.5 0.132
15 18.3 0.153
15.3 17.4 0.162
15.4 17.55 0.139
16.2 16.99 0.192
17.1 17.72 0.158
17.4 16.2 0.196
18 16.1 0.197
18.1 15.34 0.25
19.2 16.15 0.203
19.8 14.38 0.262
20.6 22 0.317
22.5 20.6 0.377
23.5 16.7 0.263
23.8 22.8 0.395
32.6 21.55 0.603
jm<-read.csv("tectona2.csv", head=T, sep = ",")
head(jm)
Diametro.Altura.Altura
1 9.9;13.84;0.066
2 10.8;15.25;0.049
3 11.2;13;0.058
4 11.3;14.6;0.066
5 11.7;15.6;0.083
6 12.6;17.2;0.1
> plot(Diametro~Altura,pch=16,xlab="Diametro(m)", ylab = "Altura(m)",
+ main="Regresion entre diametro y altura",col="blue")

Regresión entre diámetro y altura

model<-lm(Diametro~Altura, data=datos)
summary(model)

Call:
lm(formula = Diametro ~ Altura, data = datos)

Residuals:
Min 1Q Median 3Q Max
-4.2393 -2.6092 -0.7251 1.7970 10.2405
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -4.9875 2.9757 -1.676 0.105
Altura 1.2690 0.1826 6.949 1.48e-07 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 3.671 on 28 degrees of freedom


Multiple R-squared: 0.633, Adjusted R-squared: 0.6199
F-statistic: 48.29 on 1 and 28 DF, p-value: 1.484e-07

 En el siguiente modelo para la regresión lineal que el diámetro = -4.9875+1.2690(altura) estos


determinan el coeficiente de correlacion y determinacion.

predict(model)
1 2 3 4 5 6 7
6.306609 5.101059 3.730539 11.128810 9.910569 12.575470 14.364760
8 9 10 11 12 13 14
11.509510 13.539910 14.808910 16.839310 16.077910 17.689540 17.727610
15 16 17 18 19 20 21
15.951010 18.235210 17.093110 17.283460 16.572820 17.499190 15.570310
22 23 24 25 26 27 28
15.443410 14.478970 15.506860 13.260730 22.930511 21.153911 16.204810
29 30
23.945711 22.359461
residuals(model)
1 2 3 4 5 6 7
0.2933909 1.6989411 3.2694612 -4.0288096 -2.4105694 -2.6754697 -3.5647599
8 9 10 11 12 13 14
-0.3095096 -2.2399098 -3.1089100 -4.2393102 -2.0779101 -3.3895403 -3.1276103
15 16 17 18 19 20 21
-1.0510101 -3.2352103 -1.7931102 -1.8834602 -0.3728202 -0.3991903 1.8296900
22 23 24 25 26 27 28
2.5565900 3.6210301 3.6931400 6.5392702 -2.3305108 1.3460894 7.2951899
29 30
-0.1457109 10.2405392

plot(Diametro~Altura,pch=16,xlab="Diametro(m)", ylab = "Altura(m)",


main="Regresion entre diametro y altura",col="blue")
abline(model,col="red")
par(mfrow=c(2,2)) # nos dara dos graficos por fila y dos por columna

En los gráficos de los residuos vemos que los datos no son del todo normales ya que se desvían ligeramente de la
diagonal en el Q-Q plot. También parece que los datos son ligeramente heterocedasticos, como indica el grafico de
residuos frente a valores predichos. Para comprobar estadísticamente (más que visualmente) si los residuos son
normales podemos utilizar el test de Shapiro-Wilk (función shapiro.test()). Este test comprueba la hipótesis nula de
que los datos son normales. Si rechazamos la hipótesis nula (p-valor < 0.05) podemos por tanto asumir que nuestro
modelo NO es normal.

S-ar putea să vă placă și