\[\tilde X_i = X_i - \bar X\] - lo que conduce a que la variable \(X\) tenga una media de cero \(\tilde X_i = 0\)
Varianza Muestral se define como \[S^2 = \frac{1}{n-1} \sum_{i=1}^n (X_i - \bar X)^2 = \frac{1}{n-1} \left( \sum_{i=1}^n X_i^2 - n \bar X ^ 2 \right) \Leftarrow \mbox{forma abreviada para cálculo}\]
\(Cor(X,Y) = 1\) y \(Cor(X, Y) = -1\) sólo sucede cuando las observaciones de \(X\) or \(Y\) están relacionadas perfectamente y linealmente en una línea de pendiente positiva y negativa respectivamente
\(Cor(X, Y) = 0\) implica que no es relación lineal.
La normalización de una variable está definida \[Z_i = \frac{X_i - \bar X}{s_x}\]. donde \(s_x\) es la desviación estándar de \(x\)
La normalización, al llevar todos los datos a desviaciones estándar respecto a su media original, hace que los datos que en principio no son omparables sean comparables.
Si deseamos pronosticar la estatura de un niño y no tenemos más información, lo mejor que podemos hacer es utilizar el promedio histórico para pronosticar. Pero necesitamos una medida de ajuste de nuestra estimación, el error cuadrático medio
\[{\displaystyle \operatorname {ECM} ={\frac {1}{n}}\sum _{i=1}^{n}(Y_{i}-{\hat {Y_{i}}})^{2}.}\]
Es decir, pronosticaremos la estatura del niño por la línea negra, este punto tiene la propiedad de minimizar el cuadrado de las distancias de los datos observados a él, es decir, es el que genera un menor error respecto a los datos recolectados.
En caso de usar otro valor distinto a la media como valor de pronóstico, vemos que la función de error, llamada el cuadrado medio del error crecerá
Esto puede demostrarse matecamicamente derivando la expresion respecto a \(\hat {Y_{i}}\)
$$ \begin{aligned} & = 0 \ -2{i=1}^n (Y_i - {}) & = 0 \ {i=1}^n Y_i & = _{i=1}^n {} \
{i=1}^n Y_i & = n{} \ & = {} \ {{Y{i}}}= {}\ \end{aligned} $$
donde \[\hat \beta_1 = Cor(Y, X) \frac{Sd(Y)}{Sd(X)}\]
\[\hat \beta_0 = \bar Y - \hat \beta_1 \bar X\]
Regresíon tiene mucho de correlación, pero es mucho más.
Como mencionamos, en el caso de no tener variables independientes nuestro mejor pronóstico será utilizar la media para estimar las estaturas de los hijos. Pero, en el caso de tener una recta de regresión estimada por mínimos cuadrados, tendremos que la variabilidad de nuestra estimación, se podra descomponer en una parte que es explicada por el modelo y una parte que no.
Es decir de la suma total de los cuadrados de los errores de la estimación empleando la media dato observado, se podrá descomponer en una parte explicada por los cuadrados de las distancias de la estimación al modelo y otra no explicada por el modelo.
$$\begin{split}\begin{array}{lrcl} & (y_i - ) &=& (_i - ) + (y_i - _i) \ & (y_i - )^2 &=& (_i - )^2 + 2(_i - )(y_i - _i) + (y_i - _i)^2 \ & &=& + \ & &=& +
\end{array}\end{split}$$
<iframe src=“https://paternogbc.shinyapps.io/SS_regression/” style=“border: none; width: 1200px; height: 1000px”; scrolling=no>
Tipos de varianza | Distancia | Degrees of freedom | SSQ | Mean square |
---|---|---|---|---|
Regression | \(\hat y_i−\bar y\) | \(k\) (\(k=2\) hasta ahora \(\beta_0\) y \(\beta_1\)) | \(RegSS\) | \(RegSS/k\) |
Error | \(y_i−\hat y_i\) | \(n−k\) | \(RSS\) | \(RSS/(n−k)\) |
Total | \(y_i − \bar y\) | \(n\) | \(TSS\) | \(TSS/n\) |
El término \(S_E^2 = \text{RSS}/(n-k)\) es una manera de medir el desempeño del modelo. EL valor \(S_E = \sqrt{\text{RSS}/(n-k)} = \sqrt{(e^Te)/(n-k)}\). Es llamado el error estándar. Realmente es solo la desviación estándar del término de error, corregida por los grados de libertad.
Ejemplo: Supongamos que tenemos un modelo para predecir el peso de unos pacientes ¿qué implica que este modelo tenga un error estándar de 3.4 kg?
Recuerde que bajo normalidad, a \(\pm\) una desviación estandar se encuentran dos terceras partes de los pronósticos. Del mismo modo, el 95 de las estimaciones tendran como error de prónostico \(\pm 2 * SE\). Es decir, permite cuantificar el error de pronóstico de \(y\).
Simularemos datos de dos casos extremos.
A continuación calcularemos las sumas de cuadrados de la regresión, de los residuales y en consecuencia del total. Lo haremos por medio del comando anova
.
## Analysis of Variance Table
##
## Response: y
## Df Sum Sq Mean Sq F value Pr(>F)
## x 1 0.017 0.01695 0.0208 0.8856
## Residuals 98 79.852 0.81482
La suma de cuadrados de la regresión por 0.017
, ha de cuadrados de los residuales es 79.852
, en consecuencia la suma de cuadrados del total será 79.869
Una medida sobre el desempeño del modelo es de la suma de cuadrados de las observaciones a su media, que tanto es capaz de esplicar el modelo respecto al total.
\[\dfrac{\text{RegSS}}{\text{TSS}}\] Que se conoce como \(R^2\) o medida de bondad de ajuste.
¿Que valor toma el \(R^2\), interprete?
¿interprete los parámetros \(\beta_0\) y \(\beta_1\) del modelo?
##
## Call:
## lm(formula = y ~ x)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.34005 -0.60584 0.01551 0.58514 2.29747
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.1316657 0.1818975 0.724 0.471
## x -0.0004511 0.0031271 -0.144 0.886
##
## Residual standard error: 0.9027 on 98 degrees of freedom
## Multiple R-squared: 0.0002123, Adjusted R-squared: -0.00999
## F-statistic: 0.02081 on 1 and 98 DF, p-value: 0.8856
## Analysis of Variance Table
##
## Response: y1
## Df Sum Sq Mean Sq F value Pr(>F)
## x 1 752217 752217 19345 < 2.2e-16 ***
## Residuals 98 3811 39
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
¿Que valor toma el \(R^2\), interprete?
¿interprete los parámetros \(\beta_0\) y \(\beta_1\) del modelo?
El coeficiente de determinación mide la bondad del ajuste de la línea de regresión a un conjunto de datos; es decir, cuán “bien” se ajusta la línea de regresión a los datos.
Definición: El coeficiente de determinación \(R^2\) se puede interpretar como el porcentaje de reducción en la variación total en el experimento obtenido al usar la recta de regresión \(y_i=b_0+b_1x_i+e_i\), en lugar de ignorar x y usar la media muestral \(\bar y\) para predecir la variable de respuesta \(y\) .
\[R^2 = \dfrac{\text{RegSS}}{\text{TSS}} = \dfrac{\sum_i{ \left(\hat{y}_i - \overline{\mathrm{y}}\right)^2}}{\sum_i{ \left(y_i - \overline{\mathrm{y}}\right)^2}}\]
\[ \begin{aligned} R^2 & = \frac{\mbox{Variación explicada por la regresión}}{\mbox{variabilidad total}} = \frac{\sum_{i=1}^n (\hat y_i - \bar y)^2}{\sum_{i=1}^n (y_i - \bar y)^2} \\ & = 1- \frac{\mbox{variación de los residuales}}{\mbox{variabilidad total}} = 1- \frac{\sum_{i=1}^n (y_i - \hat y_i)^2}{\sum_{i=1}^n (y_i - \bar y)^2}\\ \end{aligned}\]
plot_summs(mods$lm1, mods$lm2,mods$lm3,mods$lm4, scale = FALSE,
model.names = c("Conjunto 1","Conjunto 2","Conjunto 3","Conjunto 4"), plot.distributions = TRUE,colors = c("blue","red","yellow","darkgreen"))
Encontrar una buena recta de regresión usando el método de mínimos cuadrados es realmente un procedimiento matemático. Sin embargo, queremos hacer estadística. Deseamos poder inferir desde nuestros datos a una población utilizando modelos estadísticos.
Hasta ahora hemos analizado las sumas de cuadrados sin tener en cuenta la distribución de los datos y en consecuencia no podemos hacer inferencia, ahora incorporaremos la estadística al modelo.
\[y_i = \beta_0+\beta_1x_i+e_i\]
Es decir, nos interesarán preguntas cómo ¿qué tan buen estimador es \(\hat \beta\) del poblacional?
\[y_i = \hatβ_0 + \hatβ_1x_i + \hat e_i\]
En este punto, los supuestos sobre la distribución de las variables recaerán sobre \(e_i\), este supuesto puede no resultar tan fuerte Pues en virtud del teorema del límite central podemos suponer que la combinación de variables no incluidas en el modelo resumidas \(e_i\) tenemos que la suma de estas variables independientes e identicamente distribuidas convergerán a una distribución normal.
Adicionalmente el teorema de límite central también permite suponer la convergencia normalidad Aunque el número de variables sea pequeño y no sean estrictamente independientes.
Bajo el supuesto de normalidad el término de perturbación serio fácilmente las propiedades de los estimadores de mínimos cuadrados ordinarios. Una propiedad de la distribución normal es que cualquier función lineal de variables normalmente distribuidas estará también normalmente distribuidas como analizaremos los estimadores de mínimos cuadrados de \(\beta_0\) y \(\beta_2\) son funciones lineales de \(e_i\) y en consecuencia también se distribuirán normalmente. Por lo cual tendremos forma de hacer pruebas de hipótesis sobre los estimadores de mínimos cuadrados ordinarios.
Si trabajamos con una muestra finita o pequeña, con datos de 100 o menos observaciones, la suposición de normalidad desempeña un papel relevante. No sólo contribuye a derivar las distribuciones de probabilidad exactas de los estimadores de mínimos cuadrados ordinarios, sino también para realizar las pruebas estadísticas \(t\), \(F\) y \(\chi^2\) para los modelos de regresión.
En el caso de contar con muestras grandes es posible relajar el supuesto de normalidad de los residuos al expuesto que se puede garantizar que los estadísticos \(t\) y \(F\) convergen a dichas distribuciones ( Christiaan Heij et al., Econometric Methods with Applications in Business and Economics , Oxford University Press, Oxford, 2004, p. 197)
\[\hat \beta_1 = Cor(Y, X)\frac{Sd(Y)}{Sd(X)} ,~~~~~~ \hat \beta_0 = \bar Y - \hat \beta_1 \bar X\] * \(\beta_0\) = valor esperado al resultado/respuesta cuando el predictor es 0. \[ E[Y | X = 0] = \beta_0 + \beta_1 \times 0 = \beta_0 \] - Nota: \(X=0\) puede no ser de interés en muchos posibles resultados de la variable independiente (Como por ejemplo presión en la sangre estatura) - Por lo cual se suele mover el la variable \(X\) para que el intercepto sea interpretable \[\begin{aligned} Y_i &= \beta_0 + \beta_1 X_i + \epsilon_i\\ &= \beta_0 + a \beta_1 + \beta_1 (X_i - a) + \epsilon_i \\ &= \tilde \beta_0 + \beta_1 (X_i - a) + \epsilon_i ~~~donde~ \ \tilde \beta_0 = \beta_0 + a \beta_1\\ \end{aligned} \] - Nota: Cambiando el valor de \(X\) cambia el intercepto, pero no la pendiente - frecuentemente, \(a\) es reemplazada por \(\bar X\) así que el interceptó se interpreca como la respuesta esperada en el valor promedio de \(X\).
\(\beta_1\) = valor esperado del cambio en la en el resultado/respuesta/dependiente por una unidad de cambio en el dredictor/independiente
\[E[Y ~|~ X = x+1] - E[Y ~|~ X = x] =
\beta_0 + \beta_1 (x + 1) - (\beta_0 + \beta_1 x ) = \beta_1\]
summary(lm)
)
diamond
del paquete UsingR
.
lm(price ~ I(carat - mean(carat)), data=diamond)
= regresión centrada por la media
I()
para funcionar dentro de los parámetros de un modelopredict(fitModel, newdata=data.frame(carat=c(0, 1, 2)))
= retorna el valor predicho para un modelo dado (lineal en este caso) para los puntos provistos por newdata
.
newdata
no está especificado (el argumento es omitido), entonces la función predict
retornará los valores pronosticados para todos los valores de la variable independiente (variable x, carat
en este caso)
newdata
debe ser un Data frame, y los valores que se desean predecir (de la variable x , carat
en este caso) deben ser especificados, O R
no sabrá que hacer con los valores provistos library(UsingR)
plot(diamond$carat, diamond$price, xlab = "Mass (carats)", ylab = "Price (SIN $)",
bg = "lightblue", col = "black", cex = 1.1, pch = 21,frame = FALSE)
library(UsingR)
# línea de regresión estándar para el precio vs carat
fit <- lm(price ~ carat, data = diamond)
# intercepto y pendiente
coef(fit)
## (Intercept) carat
## -259.6259 3721.0249
# regresión centrada por la media
fit2 <- lm(price ~ I(carat - mean(carat)), data = diamond)
# interceptó y pendiente
coef(fit2)
## (Intercept) I(carat - mean(carat))
## 500.0833 3721.0249
# regresión con una escala más fina (1/10th carat)
fit3 <- lm(price ~ I(carat * 10), data = diamond)
# interceptó y pendiente
coef(fit3)
## (Intercept) I(carat * 10)
## -259.6259 372.1025
# predicción para 3 valores
newx <- c(0.16, 0.27, 0.34)
# cálculos manuales
coef(fit)[1] + coef(fit)[2] * newx
## [1] 335.7381 745.0508 1005.5225
## 1 2 3
## 335.7381 745.0508 1005.5225
Los residuales representan variaciones que nuestro modelo no puede explicar. Los residuales son diferentes de los errores. Los errores son las variaciones, no explicables por el modelo poblacional, los residuales son su equivalente del modelo muestra.
Los errores verdaderos no son observables así como los coeficientes verdaderos tampoco lo son, mientras que los residuales son los errores observables como los coeficientes estimados. En cierto sentido los residuales son estimaciones de los errores.
mean(fitModel$residuals)
= retorna la media de los residuales \(\rightarrow\) qué debe ser igual a 0cov(fit$residuals, predictors)
= retorna la covarianza de los residuales con los predictores \(\rightarrow\) que también debe ser igual a 0resid(fitModel)
o fitModel$residuals
= extrae los residuales del modelo ajustado (lm es este caso) \(\rightarrow\) lista de los valores de los residuales para cada valor de Xsummary(fitModel)$r.squared
= returna \(R^2\) para el modelo de regresióna continuación analizamos los residuales del modelo de precio de diamantens diamantes explicado por carat (masa)
## Loading required package: grid
La inferencia es el proceso de sacar conclusiones sobre una población usando una muestra. En inferencia estadística, debemos dar cuenta de la incertidumbre en nuestras estimaciones. Las pruebas de hipótesis y los intervalos de confianza son algunas de las formas más comunes de presentar la inferencia estadística.
estadísticos usados para pruebas de hipótesis e intervalos de confianza tienen los siguientes atributos \[\frac{\hat \theta - \theta}{\hat \sigma_{\hat \theta}} \sim N(0,1)\]
No veremos como se derivan estas fórmulas
\[ \sigma_{\hat \beta_1}^2 = Var(\hat \beta_1) = \frac{\sigma^2 }{ \sum_{i=1}^n (X_i - \bar X)^2 }\\ \Rightarrow \sigma_{\hat \beta_1} = \frac{\sigma}{ \sqrt {\sum_{i=1}^n (X_i - \bar X)^2}} \]
Donde: \(Var(Y_i) = \sigma^2\)
la varianza del \(\beta_1\) se incrementará a la par que la varianza de Y, es decir que la varianza alrededor de la recta de regresión; y se reducirá en la medida que aumenta la varianza de las \(X\), en nuestra variable independiente.
Si la variabilidad de las X es baja, causará que las estimaciones de minimos cuadrados sean poco estables a, por ejemplo un atípico.
el caso contrario muestra como el incremento de la varianza de las x hace que se estabilice las varianzas de la pendiente
\[\sigma_{\hat \beta_0}^2 = Var(\hat \beta_0) = \left(\frac{1}{n} + \frac{\bar X^2}{\sum_{i=1}^n (X_i - \bar X)^2 }\right)\sigma^2 \\ \Rightarrow \sigma_{\hat \beta_0} = \sigma \sqrt{\frac{1}{n} + \frac{\bar X^2}{\sum_{i=1}^n (X_i - \bar X)^2 }}\]
summary(fitModel)$coefficients
= retorna la tabla de coeficientes estimados, errores estándar, valores t y p valores de los coeficientes \(\beta_0\) and \(\beta_1\)- es una buena práctica para la estimación de las relaciones lineales contar con puntos que cubran todo el rango de variación de las variables independientes, esto incrementa el denominador $\sum_{i=1}^n (X_i - \bar X)^2$, lo que a su vez reduce la varianza de los coeficientes estimados
- esto reduce la varianza de la pendiente y puede ser más confiable la estimación de la relación lineal
# obteniendo los datos
y <- diamond$price; x <- diamond$carat; n <- length(y)
# calculando beta1
beta1 <- cor(y, x) * sd(y) / sd(x)
# calculando beta0
beta0 <- mean(y) - beta1 * mean(x)
# errores de regresión normales
e <- y - beta0 - beta1 * x
# bueno temor y sesgado de la varianza
sigma <- sqrt(sum(e^2) / (n-2))
# (X_i - X Bar)
ssx <- sum((x - mean(x))^2)
# calculando los errores estándar
seBeta0 <- (1 / n + mean(x) ^ 2 / ssx) ^ .5 * sigma
seBeta1 <- sigma / sqrt(ssx)
# prueba para H0: beta0 = 0 y beta0 = 0
tBeta0 <- beta0 / seBeta0; tBeta1 <- beta1 / seBeta1
# calculating p-values for Ha: beta0 != 0 and beta0 != 0 (two sided)
pBeta0 <- 2 * pt(abs(tBeta0), df = n - 2, lower.tail = FALSE)
pBeta1 <- 2 * pt(abs(tBeta1), df = n - 2, lower.tail = FALSE)
# guardando los resultados en una tabla
coefTable <- rbind(c(beta0, seBeta0, tBeta0, pBeta0), c(beta1, seBeta1, tBeta1, pBeta1))
colnames(coefTable) <- c("Estimate", "Std. Error", "t value", "P(>|t|)")
rownames(coefTable) <- c("(Intercept)", "x")
# imprimiendo la tabla
coefTable
## Estimate Std. Error t value P(>|t|)
## (Intercept) -259.6259 17.31886 -14.99094 2.523271e-19
## x 3721.0249 81.78588 45.49715 6.751260e-40
# a continuación analizamos los residuales del modelo de diamantes
fit <- lm(y ~ x); summary(fit)$coefficients
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -259.6259 17.31886 -14.99094 2.523271e-19
## x 3721.0249 81.78588 45.49715 6.751260e-40
# guardando los resultados en una matriz
sumCoef <- summary(fit)$coefficients
# imprimiendo el intervalo de confianza para beta 0
sumCoef[1,1] + c(-1, 1) * qt(.975, df = fit$df) * sumCoef[1, 2]
## [1] -294.4870 -224.7649
# imprimiendo el intervalo de confianza para beta1 en 1/10 de las unidades
(sumCoef[2,1] + c(-1, 1) * qt(.975, df = fit$df) * sumCoef[2, 2]) / 10
## [1] 355.6398 388.5651
Podremos construir intervalos de confianza nuestros predicciones para evaluar la incertidumbre alrededor de las mismas. Podemos calcular el pronóstico, \(\hat y_0\), del punto \(x_0\)con la formula \[\hat y_0 = \hat \beta_0 + \hat \beta_1 x_0\] pero como buenos estadísticos, necesitamos incorporar la incertidumbre en nuestros pronósticos
predict(fitModel, data, interval = ("confidence"))
= retorna una matriz de tres columnas para fit
(valor pronosticado por la recta de regresión), lwr
(Límite inferior del intervalo), y upr
(límite superior del intervalo)
interval = ("confidence")
= retorna el intervalo de la rectainterval = ("prediction")
= retorna el intervalo de la prediccióndata
= debe ser un Data frame con los valores que deseamos pronosticarggplot2
)De la definición del coeficiente de determinación se desprende una limitación del coeficiente de determinación. \[ \begin{aligned} R^2 & = \frac{\mbox{Variación explicada por la regresión}}{\mbox{variabilidad total}} = \frac{\sum_{i=1}^n (\hat y_i - \bar y)^2}{\sum_{i=1}^n (y_i - \bar y)^2} \\ & = 1- \frac{\mbox{variación de los residuales}}{\mbox{variabilidad total}} = 1- \frac{\sum_{i=1}^n (y_i - \hat y_i)^2}{\sum_{i=1}^n (y_i - \bar y)^2}\\ \end{aligned}\]
\[ R^2= 1- \frac{\mbox{variación de los residuales}}{\mbox{variabilidad total}} =1- \dfrac{RSS}{TSS}=1- \frac{\sum_{i=1}^n (y_i - \hat y_i)^2}{\sum_{i=1}^n (y_i - \bar y)^2}\]
De la expresión anterior, se nota que el denominanor es una cantidad fija y que el numerador \(\sum_{i=1}^n (y_i - \hat y_i)^2\) si se agrega una variable adicional al modelo la variabilidad que explica solo puede aumentar o en el peor de los casos mantenerse constante, es decir que agregar variables.
Por lo cual, se realiza un ajuste que penalice el número de variables incluidas en el modelo en el cálculo del \(R^2\)
\[R^2_{adj} =1- \dfrac{\dfrac{RSS}{n-k}}{\dfrac{TSS}{n-1}}\]
Donde \(k\) es el número de parámetros del modelo.
557
La mayoría de los paquetes estadísticos tienen una salida estandarizada la cual permite interpretar las estimaciones de los parámetros, sus intervalos de confianza y tener una idea del rendimiento del modelo.
x <- c(10, 8, 13, 9, 11, 14, 6, 4, 12, 7, 5)
y <- c(8.04, 6.95, 7.58, 8.81, 8.33, 9.96,
7.24, 4.26, 10.84, 4.82, 5.68)
mod.ls <- lm(y ~ x)
summary(mod.ls)
##
## Call:
## lm(formula = y ~ x)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.92127 -0.45577 -0.04136 0.70941 1.83882
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.0001 1.1247 2.667 0.02573 *
## x 0.5001 0.1179 4.241 0.00217 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.237 on 9 degrees of freedom
## Multiple R-squared: 0.6665, Adjusted R-squared: 0.6295
## F-statistic: 17.99 on 1 and 9 DF, p-value: 0.00217
el error estándar del modelo, \(\hat \sigma^_{resid}\) = SE = 1.237, empleando n−k=11−2=9 grados de libertad. \[\hat \sigma^2 = \frac{1}{n-2}\sum_{i=1}^n e_i^2\]
podemos calcular los residuales: \(e_i=y_i−\hat y_i=y_i−b_0−b_1x_i\). Esperamos que la media de los residuales esté alrededor de 0, y el resto de estadísticas nos dicen que tanto varían los residuales alrededor de este 0.
“He who asks a question is a fool for five minutes; he who does not ask a question remains a fool forever.” -Confucius
Gujarati, D. N., & Porter, D. C. (2011). Econometria Básica-5. Amgh Editora.