Presentación del Problema

A partir de los datos “acoso.xlsx” se desea estudiar la relación del índice de la peligrosidad de las mujeres de un determinado país, con sus demás variables, cuya información corresponde a datos de sección cruzada de 1961 al 2010 semestral, obtenida de http://worldpopulationreview.com. Además se desea predecir como incrementa este índice, cuando los casos de homicidio son 150, 170, 200, casos de acoso en la calle: 200, 60, 100, violencia ajena a la pareja: 30, 40, 60 y finalmente casos de violencia de pareja: 60, 40, 100 siendo:

Solución

Empezamos cagando la base de datos en R studio:

datos_acoso <- read_csv("C:/Users/Admin/Desktop/datos.acoso.csv")
acoso<-data.frame(datos_acoso[,-1])
attach(acoso)

Presentamos el modelo de regresión lineal probabilístico dado por: \[\begin{align*} womenDangerIndex=b_0+b_1\,intentionalHomicide+b_2\, streetSafety+b_3\, nonPartnerViolence+\\ \beta_4\,intimatePartenerViolence + \epsilon, \end{align*}\] de donde su ecuación de predicción es dada mediante: \[\begin{align*} \hat{womensDangerIndex}=\beta_0+\beta_1\, \hat{intentionalHomicide}+ \beta_2 \,\hat{streetSafety}+\beta_3\,\hat{nonPartnerViolence}+\\\beta_4\, \hat{intimatePartnerViolence} \end{align*}\]

con \(\beta_0=\hat{b_0},\, \beta{1}=\hat{b_1},\, \beta_{2}=\hat{b_{2}},\, \beta_{3}=\hat{b_3}\in \mathbb{R}.\)

Observamos la relación entre variables:

                        womensDangerIndex streetSafety intentionalHomicide
womensDangerIndex               1.0000000   0.76792796          0.67370371
streetSafety                    0.7679280   1.00000000          0.55920107
intentionalHomicide             0.6737037   0.55920107          1.00000000
nonPartnerViolence              0.1229200  -0.01700577          0.31833936
intimatePartnerViolence         0.4919721   0.20556002          0.08095571
                        nonPartnerViolence intimatePartnerViolence
womensDangerIndex               0.12292001              0.49197214
streetSafety                   -0.01700577              0.20556002
intentionalHomicide             0.31833936              0.08095571
nonPartnerViolence              1.00000000              0.02533859
intimatePartnerViolence         0.02533859              1.00000000
Por lo tanto observamos lo siguiente:

Ahora bien, graficamos la relación de las variables del modelo.

### Ajuste del Modelo Ajustamos el modelo de regresión lineal donde obtenemos:

modelo<-lm(womensDangerIndex~intentionalHomicide+streetSafety+nonPartnerViolence+
             intimatePartnerViolence,data = acoso)
summary(modelo)

Call:
lm(formula = womensDangerIndex ~ intentionalHomicide + streetSafety + 
    nonPartnerViolence + intimatePartnerViolence, data = acoso)

Residuals:
   Min     1Q Median     3Q    Max 
-82.18 -44.87 -12.99  50.28  96.93 

Coefficients:
                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)             118.6991    31.8418   3.728 0.000538 ***
intentionalHomicide       2.4655     0.5792   4.257 0.000104 ***
streetSafety              2.7537     0.4779   5.762 7.04e-07 ***
nonPartnerViolence        0.0188     0.3640   0.052 0.959043    
intimatePartnerViolence   2.0683     0.3882   5.327 3.07e-06 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 56.76 on 45 degrees of freedom
Multiple R-squared:  0.8019,    Adjusted R-squared:  0.7843 
F-statistic: 45.54 on 4 and 45 DF,  p-value: 2.879e-15

Observamos que las variables son significativas, excepto ‘nonPartnerViolence’, en consecuencia la eliminamos del modelo, obteniendo;

mod.n<-lm(womensDangerIndex~intentionalHomicide+streetSafety+intimatePartnerViolence,
          data = acoso)
summary(mod.n)

Call:
lm(formula = womensDangerIndex ~ intentionalHomicide + streetSafety + 
    intimatePartnerViolence, data = acoso)

Residuals:
   Min     1Q Median     3Q    Max 
-82.78 -44.70 -13.29  50.35  96.71 

Coefficients:
                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)             119.5445    27.0136   4.425 5.87e-05 ***
intentionalHomicide       2.4774     0.5258   4.712 2.29e-05 ***
streetSafety              2.7474     0.4574   6.007 2.82e-07 ***
intimatePartnerViolence   2.0693     0.3835   5.395 2.31e-06 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 56.14 on 46 degrees of freedom
Multiple R-squared:  0.8019,    Adjusted R-squared:  0.789 
F-statistic: 62.07 on 3 and 46 DF,  p-value: 3.335e-16

Por otro lado, como \(r^2= 0.8019\) entonces el modelo de predicción es bueno. Así tenemos: \[\begin{equation} y=119.5445+2.4774\,\hat{intentionalHomicide}+2.7474\,\hat{streetSafety}+2.0693\,\hat{intimatePartneViolence}, \end{equation}\] siendo \(y:= \hat{womensDangerIndex}\).

Supuestos del Modelo

A1. Linealidad de los parámetros

Es evidente que el modelo es lineal con respecto a los parámetros.

A2. Normalidad: \(u_j \sim \mathcal{N}(0,\sigma^2),\hspace{0.5cm}\forall\,j=1,...,50\)


    Jarque-Bera Normality Test

data:  as.vector(mod.n$residuals)
JB = 3.7582, p-value = 0.1527
alternative hypothesis: greater

A3. Homocedasticidad

Graficamos los residuos contra los valores ajustados,

usamos los contrastes para asegurar la existencia de homocedasticidad en cada variable, en efecto.


    Goldfeld-Quandt test

data:  mod.n
GQ = 1.3023, df1 = 21, df2 = 21, p-value = 0.2752
alternative hypothesis: variance increases from segment 1 to 2

    Goldfeld-Quandt test

data:  mod.n
GQ = 1.0436, df1 = 21, df2 = 21, p-value = 0.4615
alternative hypothesis: variance increases from segment 1 to 2

    Goldfeld-Quandt test

data:  mod.n
GQ = 0.45145, df1 = 21, df2 = 21, p-value = 0.9623
alternative hypothesis: variance increases from segment 1 to 2

    Goldfeld-Quandt test

data:  mod.n
GQ = 1.5479, df1 = 21, df2 = 21, p-value = 0.1622
alternative hypothesis: variance increases from segment 1 to 2

Como \(p-valor>0.05\) para cada contraste de cada variable, entonces afirmamos que el modelo es homocedástico.

A4. Autocorrelación

Puesto que es una data de corte transversal no se analiza la autocorrelación, pues, se la hace en general para datos de series temporales.

A5. Multicolinealidad

car::vif(mod.n)
    intentionalHomicide            streetSafety intimatePartnerViolence 
               1.457540                1.511871                1.045955 

como el factor de inflación de las variables no es mayor que 10, entonces el modelo no posee multicolinealidad.

A6. Especificación del modelo

resettest(mod.n)

    RESET test

data:  mod.n
RESET = 0.33954, df1 = 2, df2 = 44, p-value = 0.7139
raintest(mod.n)

    Rainbow test

data:  mod.n
Rain = 1.1254, df1 = 25, df2 = 21, p-value = 0.3949

notamos que el \(p-valor>0.05\) para los dos contrastes, entonces el modelo está bien especificado.

A7. Parametros estables

ds<-efp(mod.n,data = acoso,type = "OLS-CUSUM")
olms<-efp(mod.n,data = acoso,type = "OLS-MOSUM")

Graficamos,

concluimos que los parámetros si son estables. Y en consecuencia el modelo “mod.n” está bien definido.

Predicciones

Usando las hipótesis del problema, definimos:

pre<-data.frame(intentionalHomicide=c(150,170,200),streetSafety=c(200,60,100),
                intimatePartnerViolence=c(60,40,100))
predict(object = mod.n,newdata = pre)
        1         2         3 
1164.8011  788.3211 1096.6972 

Conclusiones

Analicemos los 3 escenarios, esto es: