require(faraway)
## Loading required package: faraway
require(ggplot2)
## Loading required package: ggplot2
require(plotly)
## Loading required package: plotly
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
data("cornnit")
cornnit
## yield nitrogen
## 1 115 0
## 2 128 75
## 3 136 150
## 4 135 300
## 5 97 0
## 6 150 75
## 7 154 150
## 8 156 300
## 9 95 0
## 10 121 75
## 11 120 150
## 12 134 300
## 13 91 0
## 14 124 75
## 15 145 150
## 16 135 300
## 17 105 0
## 18 140 50
## 19 138 100
## 20 139 200
## 21 47 0
## 22 140 50
## 23 132 100
## 24 151 200
## 25 66 0
## 26 109 50
## 27 136 100
## 28 144 200
## 29 86 0
## 30 135 50
## 31 139 100
## 32 150 200
## 33 100 0
## 34 146 50
## 35 148 100
## 36 168 200
## 37 68 0
## 38 116 50
## 39 146 100
## 40 122 200
## 41 104 0
## 42 142 50
## 43 140 100
## 44 141 200
Se observa en la tabla que tenemos las variables yield (respuesta) y nitrogen (predictora).
g1=ggplot(data = cornnit,aes(x=nitrogen,y=yield))+geom_point()+theme_bw()
g1
g2=ggplot(data = cornnit,aes(x=nitrogen,y=yield))+geom_point()+theme_bw()+geom_smooth()
g2
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
g3=ggplot(data = cornnit,aes(x=nitrogen,y=yield))+geom_point()+theme_bw()+geom_smooth(method = "lm")
g3
## `geom_smooth()` using formula 'y ~ x'
ggplotly(g3)
## `geom_smooth()` using formula 'y ~ x'
cor(cornnit)
## yield nitrogen
## yield 1.0000000 0.6294562
## nitrogen 0.6294562 1.0000000
Se observa una relación directa entre la aplicacion de nitrógeno y el rendimiento. Sin embargo, la relación más apropiada no es linela (se debe evaluar más adelante una transformación). El coeficiente de correlación de Pearson nos indica una relación media-fuerte (0.63).
mod=lm(yield~nitrogen,data=cornnit)
summary(mod)
##
## Call:
## lm(formula = yield ~ nitrogen, data = cornnit)
##
## Residuals:
## Min 1Q Median 3Q Max
## -60.439 -10.939 1.534 14.082 29.697
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 107.43864 4.66622 23.02 < 2e-16 ***
## nitrogen 0.17730 0.03377 5.25 4.71e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 20.53 on 42 degrees of freedom
## Multiple R-squared: 0.3962, Adjusted R-squared: 0.3818
## F-statistic: 27.56 on 1 and 42 DF, p-value: 4.713e-06
Esta es la ecuación general: \(y_i = \beta_0 + \beta_1 * x_i + e_i\)
En este caso queda: \(y_i = 107.43 + 0.17730 * nitrogen_i + e_i\)
El \(\beta_1=0.17730\) nos indica que por cada aplicación adicional de nitrógeno, el rendimiento se incrementa en 0.1773.
El \(\beta_0=107.43\) nos indica que en promedio cuando no se aplica nitrógeno el rendimiento es de 107.43
Como se observa en los valores P, los coeficientes del modelo \(\beta_0 y \beta_1\) son significativos. Es decir, la variable nitrógeno sí explica el rendimiento.
El ajuste del modelo lo podemos medir con el indicador \(R^2=0.3962\), es decir, que la variabilidad del rendimiento se explica en un 40% aproximadamente por el modelo.
De acuerdo con el modelo, ¿cuál es el rendimiento promedio del maíz si aplicamos 210 de nitrógeno?
predict(mod,list(nitrogen=210))
## 1
## 144.6709
predict(mod, list(nitrogen=210), interval = "confidence", level = 0.95)
## fit lwr upr
## 1 144.6709 135.0908 154.2511
Se espera que el rendimiento promedio sea de 144.6, el intervalo de confianza nos indica que este valor promedio puede estar entre 135 y 154.2 de rendimiento con un 95% de confianza.