Regresion lineal multiple Arboles

Con base en los datos de arboles proponga un modelo de regresion lineal multiple que permita predecir el peso del arbol en funcion de las covariables que considere importantes y seleccionandolas de acuerdo con un proceso adecuado. tenga en cuenta realizar una evaluación de la significancia de los parametros, interpretación y proponga un metodo de evaluacion por medio de validacion cruzada. presente metricas apropiadas como RMSE y MAE.

library(readxl)
arboles <- read_excel("E:/Data Science/Estadistica/Mod 1/Nueva carpeta/data arboles.xlsx",    col_types = c("text", "text", "numeric", 
        "numeric", "numeric"))
head(arboles)
finca mg peso diametro altura
FINCA_1 GENOTIPO_1 13.73 4.7 5.0
FINCA_1 GENOTIPO_1 14.58 5.3 5.6
FINCA_1 GENOTIPO_1 15.88 4.8 5.8
FINCA_1 GENOTIPO_1 8.99 3.2 4.3
FINCA_1 GENOTIPO_1 6.99 2.2 3.3
FINCA_1 GENOTIPO_2 19.34 6.3 7.9

Correlación

correlacionDiametro correlacionAltura correlacionAltDiam correlacionDiametrosqrt
0.908123 0.8582009 0.935536 0.9345586

De acuerdo con los resultados de correlación entre el peso con la altura y el el diametro, se observa que en ambos casos existe una correlación positiva indicando que cuando aumenta la altura o el diametro, el peso aumenta. la correlacion entre el peso y el diametro es mayor.

La correlación entre la altura y diametro es bastante alta por lo tanto seria viable plantar un modelo tomando solo la variable diametro

modelo=lm(sqrt(peso)~diametro,data=arboles)
summary(modelo)
## 
## Call:
## lm(formula = sqrt(peso) ~ diametro, data = arboles)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.63426 -0.24303 -0.05893  0.23216  0.72631 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  1.06348    0.13326    7.98 5.08e-12 ***
## diametro     0.58284    0.02365   24.64  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.324 on 88 degrees of freedom
## Multiple R-squared:  0.8734, Adjusted R-squared:  0.872 
## F-statistic: 607.1 on 1 and 88 DF,  p-value: < 2.2e-16

de acuerdo a lo evidenciado al plantear un modelo simple y uno multiple se encuentra que en el multiple la variable altura no tiene significancia y el coeficiente de determinación para ambos modelos es muy similar. en este caso se prefiere trabajar solo con una varible realizando una transformación al modelo

\(Raiz(peso)=1,0634 + 0,5828*Diametro\)

Validación cruzada

#Validación Cruzada
Peso_predict=array(NA,90)
for(i in 1:90){
  datos_training=arboles[-i,]
  datos_test=arboles[i,]
  modelo_predict=lm(sqrt(peso)~diametro,data=datos_training)
  Peso_predict[i]=predict(modelo_predict,list(diametro=datos_test$diametro))^2
}
Resultado_predict=data.frame(arboles,Peso_predict)
head(Resultado_predict)
finca mg peso diametro altura Peso_predict
FINCA_1 GENOTIPO_1 13.73 4.7 5.0 14.472213
FINCA_1 GENOTIPO_1 14.58 5.3 5.6 17.275197
FINCA_1 GENOTIPO_1 15.88 4.8 5.8 14.895400
FINCA_1 GENOTIPO_1 8.99 3.2 4.3 8.560460
FINCA_1 GENOTIPO_1 6.99 2.2 3.3 5.402086
FINCA_1 GENOTIPO_2 19.34 6.3 7.9 22.472688

Mean absolute error (MAE)

MAE=mean(abs(Resultado_predict$peso-Resultado_predict$Peso_predict))
MAE
## [1] 2.414654
MAE/mean(Resultado_predict$peso)*100
## [1] 12.8671

El modelo propuesto presenta un error absoluto medio del 12,86% en el valor de prediccion del peso

Root Mean Squared Error (RMSE)

RMSE=sqrt(mean((Resultado_predict$peso-Resultado_predict$Peso_predict)^2))
RMSE
## [1] 3.022849
RMSE/mean(Resultado_predict$peso)*100
## [1] 16.10802

el modelo propuesto presenta un error cuadratico medio de 16% en la prediccion del peso