Taller I
Carga de librerías
Base de datos
Creación de receta (Future Engineering)
Aplicación de receta
Rows: 140
Columns: 4
$ TV <dbl> -1.43648265, 0.78700924, -0.85011875, 0.34489087, 0.27804538~
$ Radio <dbl> 0.16777604, 0.05430432, 0.78853308, 0.68173617, 1.10224900, ~
$ Newspaper <dbl> 0.5575498, -1.1609193, 0.9685832, 0.3564059, 0.3126789, -0.3~
$ Sales <dbl> 8.5, 17.4, 12.6, 17.1, 19.0, 21.8, 11.9, 17.2, 8.4, 9.5, 22.~
Rows: 60
Columns: 4
$ TV <dbl> 0.04584528, 0.38945452, -1.62881001, -1.05651884, -0.3212185~
$ Radio <dbl> 1.20904591, -0.82677019, 1.71633123, 0.64168733, -0.23938718~
$ Newspaper <dbl> 1.22219949, 1.21782679, 1.94369416, -0.30824376, -0.82859447~
$ Sales <dbl> 18.5, 12.9, 7.2, 11.8, 13.2, 9.2, 22.4, 24.4, 12.5, 18.9, 10~
Especificación genérica del modelo
Linear Regression Model Specification (regression)
Computational engine: lm
Model fit template:
stats::lm(formula = missing_arg(), data = missing_arg(), weights = missing_arg())
Entrenamiento del modelo
Call:
stats::lm(formula = Sales ~ ., data = data)
Residuals:
Min 1Q Median 3Q Max
-4.2861 -0.5292 0.1563 1.1160 2.6033
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 14.2307 0.1247 114.077 <2e-16 ***
TV 3.8300 0.1271 30.141 <2e-16 ***
Radio 2.8816 0.1376 20.942 <2e-16 ***
Newspaper -0.1008 0.1364 -0.739 0.461
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 1.476 on 136 degrees of freedom
Multiple R-squared: 0.9252, Adjusted R-squared: 0.9235
F-statistic: 560.6 on 3 and 136 DF, p-value: < 2.2e-16
El modelo presentado arroja la distribución de los residuos. Estos deben estar distribuidos de forma normal; es decir:
1.- Media de residuos debe ser 0
2.- La desviación estándar debe ser DS=1
2.1.- Las distancias entre q1 y q3 respecto a la media, debe ser mas o menos la misma;
2.2.- La distancia entre q1 y el max respecto a la media debe ser la misma.
En consecuencia, no se observa una distribución de residuos normal en sentido estricto.
Por su parte, el R-cuadrado: da un porcentaje de la variabilidad de la variable dependiente que está siendo explicada por el modelo. Por lo tanto, el modelo explica el 92% de la variabilidad de la variable dependiente.
Así mismo, el Estadístico F y el p valor representan una probabilidad resultante de una prueba estadística. Nos dice si el modelo de regresión lineal es viable. Dice si sirve o no para explicar y. En este sentido, el p-valor debe ser menor al 5%.
H0: La regresión lineal no es un modelo válido para predecir las ventas obtenidas por la Cadena de Tiendas en función de sus gastos publicitarios. Entonces un p value< a 0,5 rechaza la H0. En función de lo observado, el p-valor es menor a 5%, por lo tanto se rechaza la hipótesis nula antes descrita. Consecuentemente el modelo es adecuado para predecir el volumen de ventas, siempre y cuando se cumplan sus supuestos teóricos.
En este contexto, la interpreteción de los coeficientes del modelo es la siguiente:
1.- Los gastos de publiciad en TV son los más efectivos para incrementar las ventas. El aumento de una unidad de gasto en publicidad de TV, incrementa 3,8 unidades de ventas.
2.- Los gastos de publicidad en Rado son los segundos más efectivos. Un aumento de una unidad del gasto en radio, incrementa las ventas en 2,8 unidades.
3.- Los gastos en prensa escrita no son efectivos para incrementar las ventas de la cadena de tiendas y más bien muestran tener un efecto negativo.
Aplicación del Modelo a los Datos de Testeo
Evaluación del Modelo
# A tibble: 3 x 3
.metric .estimator .estimate
<chr> <chr> <dbl>
1 rmse standard 2.12
2 rsq standard 0.831
3 mae standard 1.46
La RMSE: raíz cuadrada de la media de residuales elevados al cuadrado, muestra ser pequeña y cercana a 2, por lo que los valores estimados no distan de los valores observados significativamente. La MAE: mean absolute erro, también es pequeña y cercana a 1. El objetivo de estas métricas es que RMSE y MAE sean lo más pequeñass para que el modelo sea exitoso, sin embargo, ello depende de el nivel de sensibilidad que se requiera permitir, por lo que es necesario conocer la aplicación exacta de esta estimación para aceptar o no definitivametne las métrica encontradas. Sin embargo, preliminarmente son adecuadas.
Verificación de supuestos estadísticos de la regresión lineal
Normalidad
A continuación se verifica el supuesto de normalidad de la distribución. Para ello se formulan las siguientes hipótesis que serán testeadas:
H0: La distribución es normal H1: La distribución no es normal.
Entonces, interesa que el resultado del test caiga en zona de aceptación de la H0
Lilliefors (Kolmogorov-Smirnov) normality test
data: ml_predicc_augment$.resid
D = 0.13387, p-value = 0.009273
Los datos no siguen una distribución normal, puesto que el p-valor es 0.0092727 lo que ubica al test en zona de rechazo de la hipótesis nula. Se requiere normalizar la variable.
Homocedasticidad
A continuación se usa el Test de Puntajes de Breush-Pagan, para verificar la existencia de homocedasticidad. Para ello se plantean las siguientes hipótesis:
H0: Los datos son homocedásticos H1: Los datos no son homocedásticos
Non-constant Variance Score Test
Variance formula: ~ fitted.values
Chisquare = 1.616409, Df = 1, p = 0.20359
Al concluir el test, se puede observar que a un nivel de significación del 5%, existe homocedasticidad. El p-valor es mayor al 5%. Por lo tanto, la varianza del modelo no es constante.
Independencia
A continuación se desarrolla un Test de Independencia: Se usa estadístico Durbin Watson y para ello se trabaja sobre los residuos. Si el valor del test es cercano a 2 se asume que las variables son independientes.
[1] 1.790544
En fuención del resultado obtenido, se asume independencia de las variables, dado que D es 1.8 y es cercano a 2.
Multicolinealidad
A continuación, se evalúa la ausencia de Multicolinealidad (redundancia de la variable explicativa respecto a otras). Las variables explicativas no deberían redundar, pues No queremos un modelo redundante. Para ello se emplea el estadístico Vif: valor de inflación de variable (value inflation factor). Identifica algún valor que está inflando la varianza del modelo. Con este antecedente, VIF Otorga valores explicativos para cada variable.
Si hay valores mayores a 5 existen problemas. Hay que eliminar del modelo la variable >5 o ensayar ajustes posteriores.
TV Radio Newspaper
1.030157 1.207987 1.186420
Una vez realizado el test, no existen variables con VIF mayor o igual a 5, por tanto asumo ausencia de multicolinealidad.
Identificación de outliers
Para evaluar la existencia de outliers se emplea el test de Bonferroni.
No Studentized residuals with Bonferroni p < 0.05
Largest |rstudent|:
rstudent unadjusted p-value Bonferroni p
104 -3.056066 0.0027036 0.3785
Una vez aplicado el test se observa que no existen outliers.
Análisis Gráfico
Resultado del análisis gráfico se observa lo siguiente:
1.- En el gráfico de Fited values vs Residuals se observa que los residuos son entre los valores observados y los valores estimados son cercanos a cero para toda la distribución.
2.- No existe una distribución normal de los errores. (ver gráfico de Cuantiles Teóricos)
3.- Los residuos estandarizados son cercanos a cero, para toda la distribución. (Ver gráfico Leverage)
Conclusión:
1.- Los gastos de publiciad en TV son los más efectivos para incrementar las ventas. El aumento de una unidad de gasto en publicidad de TV, incrementa 3,8 unidades de ventas.
2.- Los gastos de publicidad en Rado son los segundos más efectivos. Un aumento de una unidad del gasto en radio, incrementa las ventas en 2,8 unidades.
3.- Los gastos en prensa escrita no son efectivos para incrementar las ventas de la cadena de tiendas y más bien muestran tener un efecto negativo.
4.- Los supuestos de normalidad y de homocedasticidad no se cumplen, por lo que los resultados del modelo pueden invalidarse parcialmente y se deben buscar alterativas para su ajuste. Por otra parte, los supuestos de independencia y multicolinealidad si se cumplen. Finalmente, no se encuentran outliers que pudieran distoricionar los resultados encontrados, por lo que no es necesario ajustar este tipo de valores o darles tratamiento específico.