Introducción

A lo largo de este trabajo de desarrollarĆ” un modelo de regresión lineal para lo datos ā€œFacebook performance metricsā€, se comproboran los supuestos de dicho modelo y se darĆ” una intrepretación clara sobre lo que significa cada parte del modelo. AdemĆ”s, se harĆ”n modificaciones al modelo para asĆ­ notar que implicaciones (positivas o negativas) tiene esto sobre el modelo.

Datos

Primero veamos que variables conforman nuestra base de datos

##  [1] "Page.tot.likes"                   "Type."                           
##  [3] "category"                         "Post.Month"                      
##  [5] "Post.Weekday"                     "Post.Hour"                       
##  [7] "Paid"                             "Lt.Post.Tot.Reach"               
##  [9] "Lt.Post.Tot.Impr"                 "Lt.Engaged.Users"                
## [11] "Lt.Post.Consumers"                "Lt.Post.Consumptions"            
## [13] "Lt.Post.Impr.people.liked.Page"   "Lt.Post.reach.people.like.Page"  
## [15] "Lt.People.likedPage.engaged.post" "comment"                         
## [17] "like"                             "share"                           
## [19] "Tot.Interactions"

Podemos ver que contamos con las sigueintes variables - Page.tot.likes: Referente al total de likes con los que cuenta la pagina.

NOTA: Todas aquella entradas que contengan un NA serƔn sustituidas por 0

Regresión lineal con el modelo inicial, considerando todas las variables

Tomaremos como nuestra variable dependiente a la variable ā€œIteractionsā€ y el resto serĆ”n las variables independientes. Esto nos ayudarĆ” para analizar la relación que existe entre la variable ā€œIteractionsā€ y el resto de ellas, para asĆ­ saber, de forma mĆ”s clara, la influencia que tienen las variables independientes sobre la dependiente

modelo0 <- lm(Tot.Interactions~., data=datos)
summary(modelo0)
## 
## Call:
## lm(formula = Tot.Interactions ~ ., data = datos)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -9.556e-12 -6.790e-14 -2.210e-14  2.790e-14  4.562e-12 
## 
## Coefficients:
##                                    Estimate Std. Error    t value Pr(>|t|)
## (Intercept)                       1.223e-12  4.484e-13  2.728e+00  0.00661
## Page.tot.likes                   -3.198e-18  4.889e-18 -6.540e-01  0.51337
## Type.Photo                        1.133e-13  1.325e-13  8.560e-01  0.39267
## Type.Status                       1.211e-12  1.879e-13  6.445e+00 2.83e-10
## Type.Video                        1.139e-12  2.617e-13  4.352e+00 1.65e-05
## category                         -9.326e-14  3.432e-14 -2.718e+00  0.00681
## Post.Month                       -3.051e-14  2.435e-14 -1.253e+00  0.21092
## Post.Weekday                      1.996e-15  1.264e-14  1.580e-01  0.87462
## Post.Hour                        -3.510e-16  6.105e-15 -5.700e-02  0.95418
## Paid                              1.362e-13  5.767e-14  2.361e+00  0.01860
## Lt.Post.Tot.Reach                -1.433e-17  5.038e-18 -2.843e+00  0.00465
## Lt.Post.Tot.Impr                 -6.575e-19  1.787e-18 -3.680e-01  0.71309
## Lt.Engaged.Users                 -1.207e-15  8.323e-16 -1.450e+00  0.14768
## Lt.Post.Consumers                 8.025e-16  8.306e-16  9.660e-01  0.33444
## Lt.Post.Consumptions              2.312e-17  1.900e-17  1.217e+00  0.22431
## Lt.Post.Impr.people.liked.Page    4.770e-19  1.963e-18  2.430e-01  0.80808
## Lt.Post.reach.people.like.Page    1.003e-17  1.060e-17  9.460e-01  0.34452
## Lt.People.likedPage.engaged.post -5.383e-16  1.236e-16 -4.354e+00 1.63e-05
## comment                           1.000e+00  2.676e-15  3.736e+14  < 2e-16
## like                              1.000e+00  8.042e-16  1.243e+15  < 2e-16
## share                             1.000e+00  1.867e-15  5.355e+14  < 2e-16
##                                     
## (Intercept)                      ** 
## Page.tot.likes                      
## Type.Photo                          
## Type.Status                      ***
## Type.Video                       ***
## category                         ** 
## Post.Month                          
## Post.Weekday                        
## Post.Hour                           
## Paid                             *  
## Lt.Post.Tot.Reach                ** 
## Lt.Post.Tot.Impr                    
## Lt.Engaged.Users                    
## Lt.Post.Consumers                   
## Lt.Post.Consumptions                
## Lt.Post.Impr.people.liked.Page      
## Lt.Post.reach.people.like.Page      
## Lt.People.likedPage.engaged.post ***
## comment                          ***
## like                             ***
## share                            ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.624e-13 on 479 degrees of freedom
## Multiple R-squared:      1,  Adjusted R-squared:      1 
## F-statistic: 1.14e+31 on 20 and 479 DF,  p-value: < 2.2e-16

Podemos notar que el p valor obtenido por el estadistico F es bastante pequeƱo, lo que nos indica que la variable ā€œIteractionsā€ sĆ­ esta siendo explicada por al menos una de las variables independientes. Sin embargo notamos gracias a la \(R^2\) que toda la variabilidad de los datos observados estan siendo explicada por el modelo, pues \(R^2 = 1\), lo que es un poco alarmante pues es muy poco probable que eso suceda en casos reales.

Entonces, analizando los datos nos percatamos que Iteractions = Comment + like + share (que obviamente son las variable mƔs significativas en el modelo anterior), por lo que debemos quitar estas tres variable pues no estan explicando la variable dependiente, si no son las que hacen que dicha variable exista y tome los valores que toma, asƭ que al tomarlas lo que estamos haciendo es explicar Iterations con las variabes que lo conforman.

Por lo que ahora haremos un nuevo modelo sin considerar esas tres variables

modelo1<-lm(Tot.Interactions~ Page.tot.likes+Type.+category+Post.Month+Post.Weekday+Post.Hour+Paid+Lt.Post.Tot.Reach+Lt.Post.Tot.Impr+Lt.Engaged.Users+Lt.Post.Consumers+Lt.Post.Consumptions+Lt.Post.Impr.people.liked.Page+Lt.Post.reach.people.like.Page+Lt.People.likedPage.engaged.post, data = datos)
summary(modelo1)
## 
## Call:
## lm(formula = Tot.Interactions ~ Page.tot.likes + Type. + category + 
##     Post.Month + Post.Weekday + Post.Hour + Paid + Lt.Post.Tot.Reach + 
##     Lt.Post.Tot.Impr + Lt.Engaged.Users + Lt.Post.Consumers + 
##     Lt.Post.Consumptions + Lt.Post.Impr.people.liked.Page + Lt.Post.reach.people.like.Page + 
##     Lt.People.likedPage.engaged.post, data = datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -375.35  -20.17   -1.97   20.68  499.43 
## 
## Coefficients:
##                                    Estimate Std. Error t value Pr(>|t|)
## (Intercept)                      -7.534e+00  5.290e+01  -0.142 0.886800
## Page.tot.likes                    1.004e-03  5.763e-04   1.742 0.082152
## Type.Photo                       -2.423e+01  1.571e+01  -1.543 0.123592
## Type.Status                      -3.706e+01  2.206e+01  -1.680 0.093539
## Type.Video                        9.686e+01  3.048e+01   3.178 0.001580
## category                         -9.861e-01  3.993e+00  -0.247 0.805027
## Post.Month                       -1.007e+01  2.853e+00  -3.528 0.000458
## Post.Weekday                     -2.149e-02  1.501e+00  -0.014 0.988582
## Post.Hour                        -1.045e+00  7.216e-01  -1.448 0.148347
## Paid                             -6.903e+00  6.858e+00  -1.007 0.314645
## Lt.Post.Tot.Reach                -1.725e-03  5.942e-04  -2.902 0.003872
## Lt.Post.Tot.Impr                  6.177e-04  2.110e-04   2.928 0.003572
## Lt.Engaged.Users                  1.472e+00  1.824e-02  80.724  < 2e-16
## Lt.Post.Consumers                -1.456e+00  1.820e-02 -80.019  < 2e-16
## Lt.Post.Consumptions              4.675e-03  2.200e-03   2.126 0.034048
## Lt.Post.Impr.people.liked.Page   -4.288e-04  2.328e-04  -1.842 0.066089
## Lt.Post.reach.people.like.Page   -2.707e-03  1.244e-03  -2.175 0.030086
## Lt.People.likedPage.engaged.post  5.530e-02  1.427e-02   3.874 0.000122
##                                     
## (Intercept)                         
## Page.tot.likes                   .  
## Type.Photo                          
## Type.Status                      .  
## Type.Video                       ** 
## category                            
## Post.Month                       ***
## Post.Weekday                        
## Post.Hour                           
## Paid                                
## Lt.Post.Tot.Reach                ** 
## Lt.Post.Tot.Impr                 ** 
## Lt.Engaged.Users                 ***
## Lt.Post.Consumers                ***
## Lt.Post.Consumptions             *  
## Lt.Post.Impr.people.liked.Page   .  
## Lt.Post.reach.people.like.Page   *  
## Lt.People.likedPage.engaged.post ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 66.99 on 482 degrees of freedom
## Multiple R-squared:   0.97,  Adjusted R-squared:  0.969 
## F-statistic: 917.4 on 17 and 482 DF,  p-value: < 2.2e-16

Ahora bien, con este nuevo modelo notamos que \(R^2 = 0.969\), así que nuestro modelo esta explicando mÔs del 95% de la varianza, lo que sigue haciendo que podamos afrimar que nuestro modelo sea muy bueno. AdemÔs notanos que el estadistico F nos da un p-value muy pequeño, lo que indica que efectivamente, al menos una de las variables esta explicando la variable dependiente, lo que es aún mÔs notable si notamos que algunas variables independientes son significativas.

Sin embargo, debemos considerar varias cosas antes de dar por hecho la afirmación de que el modelo sea bueno. Primero, notemos que no todas las variables son significativas o son poco significativas, por lo que podriamos armar un modelo con un número menor de variables que explique, igualmente, bien los datos. Y segundo y mÔs importante, debemos verificar los supuestos de la regresión lineal, los cuales son:

  1. La esperanza de los errores es cero \(E(\epsilon _i = 0)\)

  2. La varianza de los errores es contante, homosedasticidad \(Var(\epsilon_i) = \sigma^2\)

  3. Los erroes se distribuyen normal estƔndar \(\epsilon_i\) \(\sim\) N(0, \(\sigma^2\))

  4. Los errores no estan correlacionados \(Cov(\epsilon_i, \epsilon_j) = 0\)

Primero verifiquemos los supuestos para este modelo y posteriormente crearemos un nuevo modelo considerando menos variables. Para ello definimos los residuos como: \(e_i = y_i - \hat{y_i}\) Como podemos ver, estos residuos miden la diferencia entre los valores observados y los estimados por el modelo.

AdemÔs también se tiene que los residuos estandarizados son los residuos pero divididos entre su desviación estandar para evitar la tendencia de los residuos a ser menores para valores de la variable dependiente alejados de la media. Entonces \(d_i = \frac{e_i }{\hat{\sigma}}\)

Entonces, para verificar los supuestos de media cero y varianza constante graficaremos los residuos vs los residuos estandarizados

resestandar<-rstandard(modelo1) #residuos estandarizados
vajustados<-fitted(modelo1) #valores ajustados
plot(vajustados,resestandar, pch=20, 
     main="Grafica para comprobar homoscedasticidad")

Con esta grƔfica podemos notar que ni la esperanza nula ni la homosedasticidad se cumplen, pues la grƔfica no es simƩtrica y los puntos no estan contenidos entre el -2, 2. Pero hagamos una prueba mƔs formal para estar totalmente seguros sobre la homosedasticidad Breusch-Pagan Test. Esta prueba hace \(H_0\):Hay poca variabilidad en los valores que toma la varianza vs \(H_1\):Hay mucha variabilidad

## 
##  studentized Breusch-Pagan test
## 
## data:  modelo1
## BP = 243.53, df = 17, p-value < 2.2e-16

Vemos que la prueba nos arroja un \(p-value < 0.05\) por lo que se rechaza la homoscedasticidad

Ahora veamos que sucede con la normalidad de los errores

Esta grÔfica lo que hace es graficar los cuantiles teóricos reales de una normal estÔndar vs los valores de los cuantiles de la distribución de nuestros residuo muestraless. Notemos que se tienen bastantes datos en las colas y bastante alejados de la linea roja la cual representa a los cuantules de una distribucion \(Normal(0,1)\), lo ideal seria que estuvieran lo mas cercanas a esta linea posible, ya que no lo estan parece indicarnos que tampoco cumple con este supuesto, hagamos otra pureba para verificar lo anterior

## 
##  Anderson-Darling normality test
## 
## data:  resestandar
## A = 37.452, p-value < 2.2e-16

La prueba anterior lo que hace es \(H_0\): Los datos siguen una distribución normal vs \(H_1\): Los datos no siguen una distribución normal. Entonces, dado que el \(p-value<.05\) podemos se rechaza que los datos sigan una distribución normal.

Para analizar a profundidad el supuesto de independencia hagamos la prueba Durbin-Watson de Autocorrelación

## 
##  Durbin-Watson test
## 
## data:  modelo1
## DW = 1.9496, p-value = 0.4879
## alternative hypothesis: true autocorrelation is not 0

Podemos notar que el valor arrojado es DW = 1.9496 por lo que SI esta entre 1.5 y 2.5 lo que nos dice que NO existe autocorrelacion significativa entre los residuos.

Finalmente veamos si existe multicolinealidad entre las variables, para ello veamos la matriz de correlaciones

## corrplot 0.84 loaded

Aquí se pueden notar correlaciones muy altas, lo que es un gran problema pues implica multicolinealidad lo que no nos permitiria hacer una correcta interpretación de nuestro modelo. Para solucionar este problema (y procueremos que el del resto de los supuestos también) crearemos un nuevo modelo quitando las varibles mÔs correlacionadas y las menos significativas.

Segundo modelo

Ahora buscaremos un mejor modelo con la esperanza de que cumpla con todos los supuestos Para la realización de este modelo, tomaremos en cuenta a Interactions como la variable dependiente, y las mismas que se tomaron en cuenta para la realizacion del modelo1 como las independientes.

modelo2 <- lm(Tot.Interactions~ Page.tot.likes+Type.+category+Post.Month+Post.Weekday+Post.Hour+Paid+Lt.Post.Tot.Reach+Lt.Post.Tot.Impr+Lt.Engaged.Users+Lt.Post.Consumers+Lt.Post.Consumptions+Lt.Post.Impr.people.liked.Page+Lt.Post.reach.people.like.Page+Lt.People.likedPage.engaged.post, data = datos)

Para la seleccion de variables que entrarÔn en el modelo utilizaremos el método de pasos sucesivos (stepwise), éste método es una combinación de los metodos forward y backard. En cada paso se introduce la variable independiente que no se encuentre ya en la ecuación y que tenga la probabilidad para F mÔs pequeña. Las variables ya introducidas en la ecuación de regresión pueden ser eliminadas del modelo. El método termina cuando ya no hay mÔs variables candidatas a ser incluidas o eliminadas.

step <- stepAIC(modelo2, direction="both")
## Start:  AIC=4222.15
## Tot.Interactions ~ Page.tot.likes + Type. + category + Post.Month + 
##     Post.Weekday + Post.Hour + Paid + Lt.Post.Tot.Reach + Lt.Post.Tot.Impr + 
##     Lt.Engaged.Users + Lt.Post.Consumers + Lt.Post.Consumptions + 
##     Lt.Post.Impr.people.liked.Page + Lt.Post.reach.people.like.Page + 
##     Lt.People.likedPage.engaged.post
## 
##                                    Df Sum of Sq      RSS    AIC
## - Post.Weekday                      1         1  2162770 4220.1
## - category                          1       274  2163043 4220.2
## - Paid                              1      4546  2167315 4221.2
## <none>                                           2162769 4222.1
## - Post.Hour                         1      9404  2172173 4222.3
## - Page.tot.likes                    1     13616  2176385 4223.3
## - Lt.Post.Impr.people.liked.Page    1     15225  2177994 4223.7
## - Lt.Post.Consumptions              1     20273  2183042 4224.8
## - Lt.Post.reach.people.like.Page    1     21234  2184003 4225.0
## - Lt.Post.Tot.Reach                 1     37801  2200570 4228.8
## - Lt.Post.Tot.Impr                  1     38471  2201240 4229.0
## - Post.Month                        1     55865  2218634 4232.9
## - Lt.People.likedPage.engaged.post  1     67343  2230112 4235.5
## - Type.                             3    104740  2267509 4239.8
## - Lt.Post.Consumers                 1  28731107 30893876 5549.7
## - Lt.Engaged.Users                  1  29239597 31402366 5557.9
## 
## Step:  AIC=4220.15
## Tot.Interactions ~ Page.tot.likes + Type. + category + Post.Month + 
##     Post.Hour + Paid + Lt.Post.Tot.Reach + Lt.Post.Tot.Impr + 
##     Lt.Engaged.Users + Lt.Post.Consumers + Lt.Post.Consumptions + 
##     Lt.Post.Impr.people.liked.Page + Lt.Post.reach.people.like.Page + 
##     Lt.People.likedPage.engaged.post
## 
##                                    Df Sum of Sq      RSS    AIC
## - category                          1       273  2163043 4218.2
## - Paid                              1      4552  2167322 4219.2
## <none>                                           2162770 4220.1
## - Post.Hour                         1      9433  2172202 4220.3
## - Page.tot.likes                    1     13690  2176460 4221.3
## - Lt.Post.Impr.people.liked.Page    1     15232  2178002 4221.7
## + Post.Weekday                      1         1  2162769 4222.1
## - Lt.Post.Consumptions              1     20280  2183050 4222.8
## - Lt.Post.reach.people.like.Page    1     21247  2184017 4223.0
## - Lt.Post.Tot.Reach                 1     37800  2200570 4226.8
## - Lt.Post.Tot.Impr                  1     38497  2201267 4227.0
## - Post.Month                        1     56067  2218837 4230.9
## - Lt.People.likedPage.engaged.post  1     67657  2230427 4233.5
## - Type.                             3    104882  2267652 4237.8
## - Lt.Post.Consumers                 1  28735612 30898381 5547.8
## - Lt.Engaged.Users                  1  29288230 31451000 5556.7
## 
## Step:  AIC=4218.21
## Tot.Interactions ~ Page.tot.likes + Type. + Post.Month + Post.Hour + 
##     Paid + Lt.Post.Tot.Reach + Lt.Post.Tot.Impr + Lt.Engaged.Users + 
##     Lt.Post.Consumers + Lt.Post.Consumptions + Lt.Post.Impr.people.liked.Page + 
##     Lt.Post.reach.people.like.Page + Lt.People.likedPage.engaged.post
## 
##                                    Df Sum of Sq      RSS    AIC
## - Paid                              1      4526  2167569 4217.3
## <none>                                           2163043 4218.2
## - Post.Hour                         1      9167  2172210 4218.3
## - Page.tot.likes                    1     13477  2176520 4219.3
## - Lt.Post.Impr.people.liked.Page    1     15085  2178128 4219.7
## + category                          1       273  2162770 4220.1
## + Post.Weekday                      1         0  2163043 4220.2
## - Lt.Post.reach.people.like.Page    1     21004  2184046 4221.0
## - Lt.Post.Consumptions              1     21988  2185030 4221.3
## - Lt.Post.Tot.Reach                 1     37527  2200570 4224.8
## - Lt.Post.Tot.Impr                  1     38245  2201288 4225.0
## - Post.Month                        1     56304  2219347 4229.1
## - Lt.People.likedPage.engaged.post  1     67410  2230453 4231.6
## - Type.                             3    106396  2269439 4236.2
## - Lt.Post.Consumers                 1  30491613 32654655 5573.4
## - Lt.Engaged.Users                  1  31376734 33539777 5586.8
## 
## Step:  AIC=4217.25
## Tot.Interactions ~ Page.tot.likes + Type. + Post.Month + Post.Hour + 
##     Lt.Post.Tot.Reach + Lt.Post.Tot.Impr + Lt.Engaged.Users + 
##     Lt.Post.Consumers + Lt.Post.Consumptions + Lt.Post.Impr.people.liked.Page + 
##     Lt.Post.reach.people.like.Page + Lt.People.likedPage.engaged.post
## 
##                                    Df Sum of Sq      RSS    AIC
## - Post.Hour                         1      8286  2175855 4217.2
## <none>                                           2167569 4217.3
## - Page.tot.likes                    1     12379  2179948 4218.1
## + Paid                              1      4526  2163043 4218.2
## - Lt.Post.Impr.people.liked.Page    1     14401  2181969 4218.6
## + category                          1       247  2167322 4219.2
## + Post.Weekday                      1         3  2167566 4219.3
## - Lt.Post.Consumptions              1     21140  2188709 4220.1
## - Lt.Post.reach.people.like.Page    1     21987  2189556 4220.3
## - Lt.Post.Tot.Reach                 1     37021  2204590 4223.7
## - Lt.Post.Tot.Impr                  1     37472  2205041 4223.8
## - Post.Month                        1     54300  2221869 4227.6
## - Lt.People.likedPage.engaged.post  1     69794  2237363 4231.1
## - Type.                             3    104199  2271768 4234.7
## - Lt.Post.Consumers                 1  30491811 32659380 5571.5
## - Lt.Engaged.Users                  1  31424417 33591986 5585.6
## 
## Step:  AIC=4217.16
## Tot.Interactions ~ Page.tot.likes + Type. + Post.Month + Lt.Post.Tot.Reach + 
##     Lt.Post.Tot.Impr + Lt.Engaged.Users + Lt.Post.Consumers + 
##     Lt.Post.Consumptions + Lt.Post.Impr.people.liked.Page + Lt.Post.reach.people.like.Page + 
##     Lt.People.likedPage.engaged.post
## 
##                                    Df Sum of Sq      RSS    AIC
## <none>                                           2175855 4217.2
## + Post.Hour                         1      8286  2167569 4217.3
## - Page.tot.likes                    1     11997  2187851 4217.9
## + Paid                              1      3645  2172210 4218.3
## - Lt.Post.Impr.people.liked.Page    1     15581  2191436 4218.7
## + Post.Weekday                      1        42  2175812 4219.2
## + category                          1         7  2175847 4219.2
## - Lt.Post.Consumptions              1     19262  2195116 4219.6
## - Lt.Post.reach.people.like.Page    1     21661  2197515 4220.1
## - Lt.Post.Tot.Reach                 1     38887  2214742 4224.0
## - Lt.Post.Tot.Impr                  1     39708  2215563 4224.2
## - Post.Month                        1     51316  2227171 4226.8
## - Lt.People.likedPage.engaged.post  1     66186  2242040 4230.1
## - Type.                             3    103878  2279733 4234.5
## - Lt.Post.Consumers                 1  30531943 32707798 5570.3
## - Lt.Engaged.Users                  1  31710271 33886125 5588.0
step$anova 
## Stepwise Model Path 
## Analysis of Deviance Table
## 
## Initial Model:
## Tot.Interactions ~ Page.tot.likes + Type. + category + Post.Month + 
##     Post.Weekday + Post.Hour + Paid + Lt.Post.Tot.Reach + Lt.Post.Tot.Impr + 
##     Lt.Engaged.Users + Lt.Post.Consumers + Lt.Post.Consumptions + 
##     Lt.Post.Impr.people.liked.Page + Lt.Post.reach.people.like.Page + 
##     Lt.People.likedPage.engaged.post
## 
## Final Model:
## Tot.Interactions ~ Page.tot.likes + Type. + Post.Month + Lt.Post.Tot.Reach + 
##     Lt.Post.Tot.Impr + Lt.Engaged.Users + Lt.Post.Consumers + 
##     Lt.Post.Consumptions + Lt.Post.Impr.people.liked.Page + Lt.Post.reach.people.like.Page + 
##     Lt.People.likedPage.engaged.post
## 
## 
##             Step Df     Deviance Resid. Df Resid. Dev      AIC
## 1                                      482    2162769 4222.146
## 2 - Post.Weekday  1    0.9199568       483    2162770 4220.146
## 3     - category  1  272.7997899       484    2163043 4218.209
## 4         - Paid  1 4526.2907791       485    2167569 4217.254
## 5    - Post.Hour  1 8285.7925676       486    2175855 4217.162

Con esto obtenemos un nuevo modelo que llamaremos modeloFin podemos ver que se han eliminado las variables Post.Hour, Paid, Post.Weekday y Category

## 
## Call:
## lm(formula = Tot.Interactions ~ Page.tot.likes + Type. + Post.Month + 
##     Lt.Post.Tot.Reach + Lt.Post.Tot.Impr + Lt.Engaged.Users + 
##     Lt.Post.Consumers + Lt.Post.Consumptions + Lt.Post.Impr.people.liked.Page + 
##     Lt.Post.reach.people.like.Page + Lt.People.likedPage.engaged.post, 
##     data = datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -374.05  -19.68   -1.98   18.28  501.17 
## 
## Coefficients:
##                                    Estimate Std. Error t value Pr(>|t|)
## (Intercept)                      -1.235e+01  5.153e+01  -0.240 0.810717
## Page.tot.likes                    9.347e-04  5.710e-04   1.637 0.102292
## Type.Photo                       -2.701e+01  1.538e+01  -1.756 0.079690
## Type.Status                      -3.884e+01  2.170e+01  -1.790 0.074114
## Type.Video                        9.177e+01  3.024e+01   3.035 0.002538
## Post.Month                       -9.449e+00  2.791e+00  -3.386 0.000768
## Lt.Post.Tot.Reach                -1.740e-03  5.904e-04  -2.947 0.003361
## Lt.Post.Tot.Impr                  6.247e-04  2.098e-04   2.978 0.003045
## Lt.Engaged.Users                  1.472e+00  1.749e-02  84.160  < 2e-16
## Lt.Post.Consumers                -1.455e+00  1.762e-02 -82.581  < 2e-16
## Lt.Post.Consumptions              4.455e-03  2.148e-03   2.074 0.038587
## Lt.Post.Impr.people.liked.Page   -4.322e-04  2.317e-04  -1.866 0.062712
## Lt.Post.reach.people.like.Page   -2.722e-03  1.237e-03  -2.200 0.028307
## Lt.People.likedPage.engaged.post  5.432e-02  1.413e-02   3.845 0.000137
##                                     
## (Intercept)                         
## Page.tot.likes                      
## Type.Photo                       .  
## Type.Status                      .  
## Type.Video                       ** 
## Post.Month                       ***
## Lt.Post.Tot.Reach                ** 
## Lt.Post.Tot.Impr                 ** 
## Lt.Engaged.Users                 ***
## Lt.Post.Consumers                ***
## Lt.Post.Consumptions             *  
## Lt.Post.Impr.people.liked.Page   .  
## Lt.Post.reach.people.like.Page   *  
## Lt.People.likedPage.engaged.post ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 66.91 on 486 degrees of freedom
## Multiple R-squared:  0.9698, Adjusted R-squared:  0.969 
## F-statistic:  1202 on 13 and 486 DF,  p-value: < 2.2e-16

Con este nuevo modelo notamos que \(R^2 = 0.969\), por lo que nuestro nuevo modelo esta explicando mĆ”s del 95% de la varianza. AdemĆ”s podemos ver que el estadistico F nos da un p-value \(< 2.2e-16\), lo que nos indica que es un ā€œbuen modeloā€ explicado por las variables que se tomaron en cuenta. otro factor que podemos notar es que la mayoria de las variables son significativas lo cual implica que cada una ayuda a explicar de buena manera la variable respuesta. AĆŗn asi, hace falta checar los supuestos de la regresion lineal.

Si comparamos las graficas de ambos modelos, podemos ver que para el modeloFin hay una menor cantidad de puntos, pero que las graficas se parecen entre si con leves variaciones, esto se debe proncipalmente a que se redujo el numero de variables excluyendo las menos significativas del primer modelo. a demas podemos notar en la 4ta grÔfica que existen 3 observaciones (245, 416, 447) que tienen un elevado efecto palanca, es decir tienen una combinación inusual de valores predictores

Volveremos a hacer las pruebas de los supuestos, para ver si el modelo mejoro o si empeoro. la primera prueba sera la Breusch-Pagan Test

## 
##  studentized Breusch-Pagan test
## 
## data:  modeloFin
## BP = 240.43, df = 13, p-value < 2.2e-16

Vemos que la prueba nos arroja un \(p-value < 2.2e-16\) por lo que se rechaza la homoscedasticidad. lo que nos diria que no todas las variables siguen la misma distribución.

La siguiente prueba sera la Anderson-Darling Test

## 
##  Anderson-Darling normality test
## 
## data:  resestandarF
## A = 37.594, p-value < 2.2e-16

Al igual que en el primer modelo, podemos ver que se tiene un \(p-value < 2.2e-16\) lo que nos dice que no tienen una distribución Normal como se esperaria, esto también se puede ver en la GrÔfica Normal Q-Q para este modelo, pues las colas se alejan miucho de la linea roja referente a los cuantiles de una \(Normal (0,1)\)

Se realiza la prueba Durbin-Watson de Autocorrelación

## 
##  Durbin-Watson test
## 
## data:  modeloFin
## DW = 1.9396, p-value = 0.429
## alternative hypothesis: true autocorrelation is not 0

Podemos observar que nos da un valor DW = 1.9396 que esta muy cercano al valor esperado de 2 y por lo que podemos concluir que NO existe autocorrelación entre los residuales, cumpliendo asi con el supuesto de la independencia de estos.

Como ultima prueba, veremos si existe multicolinealidad entre las variables, nuevamente realizaremos una matriz de correlaciones, excluyendo las variables Post.Hour, Paid, Post.Weekday y Category pues estas ya no se encuentran en modeloFin

Podemos ver que en el nuevo modelo, las variables que se conservaron fueron las mas correlacionadas entre si, lo que no nos permite realizar una interpretación optima de la variable dependiente.