Última actualización de este sitio: 27 junio, 2023
————————
El modelo de regresión lineal simple (SLR) es uno de los modelos estadísticos más usados en aplicaciones prácticas de diferentes disciplinas (Harrell, 2001). Acá se muestra como lograr el ajuste de un modelo SLR en el software R (R Core Team, 2022).
Un modelo estadístico lineal simple de altura (\(h\))-diámetro (\(d\)) tiene la siguiente estructura general
\[\begin{equation}
h_i={\beta_0}+{\beta_1}d_i + \epsilon_i, \label{eq:modh.0}
\end{equation}\]
donde: \(h_i\) es la altura del \(i\)-ésimo árbol; \(d_i\) es el diámetro a la altura del pecho
del \(i\)-ésimo árbol; \({\beta_0}\) y \({\beta_1}\) son parámetros del modelo que
representan al intercepto y pendiente, respectivamente; \(\epsilon_{i}\) es un error aleatorio para
la \(i\)-ésima observación que sigue
una función de densidad de probabilidades Gaussiana con valor esperado
cero y varianza \(\sigma^2_{\epsilon}\).
Se empleará la dataframe \({\tt idahohd2}\) del paquete \({\tt datana}\) (Salas-Eljatib et al., 2022) del libro Análisis de datos con el programa estadístico R: una introducción aplicada (Salas-Eljatib, 2021). Esta dataframe contiene mediciones de altura y diámetro de árboles dentro de parcelas de muestreo en bosques naturales del Estado de Idaho (USA).
> library(datana)
> data("idahohd2")
> df <- idahohd2
Revisemos los datos
> head(df) #primeras seis filas
parce narb spp d h
1 2 1 DF 39 20.5
2 2 2 WL 48 33.0
3 3 2 GF 52 30.0
4 3 5 WC 36 20.7
5 3 8 WC 38 22.5
6 4 1 WC 46 18.0
> nrow(df) #numero de filas de la dataframe
[1] 372
Una estadística descriptiva de las variable predictora y respuesta se obtiene mediante la función \({\tt descstat()}\)
> descstat(df[,c("d","h")])
d h
n 372.000 372.000
Minimum 10.000 5.000
Maximum 112.000 48.000
Mean 36.628 24.313
Median 33.750 24.500
Std. Dev. 18.159 7.382
CV % 49.576 30.365
Es fundamental revisar la dispersión entre la variable respuesta y la predictora
> plot(h~d, data=df)
Se ajustará el modelo mediante el método de los mínimos cuadrados (OLS), el cual esta implementado en la función \({\tt lm()}\) de R.
> mod<- lm(h ~ d, data=df)
> summary(mod)
Call:
lm(formula = h ~ d, data = df)
Residuals:
Min 1Q Median 3Q Max
-10.81 -2.85 -0.01 2.59 13.09
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 12.3902 0.5176 23.9 <2e-16
d 0.3255 0.0127 25.7 <2e-16
Residual standard error: 4.43 on 370 degrees of freedom
Multiple R-squared: 0.641, Adjusted R-squared: 0.64
F-statistic: 661 on 1 and 370 DF, p-value: <2e-16
El estimador del parámetro \(\beta_0\) es 12.3902, mientras que el estimador del parámetro \(\beta_1\) es 0.3255. El valor estimado para la desviasión estándar de los residuales \(\sigma_{\epsilon}\) del modelo es 4.43, por lo tanto la varianza estimada de los residuales es 19.62.
datana
: Data and functions to
accompany Análisis de datos con R.
Package version 1.0.2. https://cran.r-project.org/package=datana.