Termin interakcji z wykorzystaniem analizy regresji hierarchicznej zmiennych centrowanych? Jakie zmienne powinniśmy wyśrodkować?

9

Przeprowadzam hierarchiczną analizę regresji i mam małe wątpliwości:

  1. Czy obliczamy termin interakcji za pomocą zmiennych centrowanych?

  2. Czy musimy wyśrodkować WSZYSTKIE zmienne ciągłe, które mamy w zbiorze danych, oprócz zmiennej zależnej?

  3. Kiedy musimy rejestrować niektóre zmienne (ponieważ ich wartość sd jest znacznie wyższa niż ich średnia), to czy centrujemy zmienną, która właśnie została zarejestrowana, czy zmienną początkową?

Na przykład: Zmienna „Obrót” ---> Zarejestrowany obrót (ponieważ SD jest zbyt wysoki w porównaniu do średniej) ---> Wyśrodkowany obrót?

LUB czy byłoby to bezpośrednio Obrót -> Wyśrodkowany_obrót (i pracujemy z tym)

DZIĘKI!!

Doktorant
źródło

Odpowiedzi:

10

Powinieneś wyśrodkować terminy związane z interakcją, aby zmniejszyć kolinearność, np

set.seed(10204)
x1 <- rnorm(1000, 10, 1)
x2 <- rnorm(1000, 10, 1)
y <- x1 + rnorm(1000, 5, 5)  + x2*rnorm(1000) + x1*x2*rnorm(1000) 

x1cent <- x1 - mean(x1)
x2cent <- x2 - mean(x2)
x1x2cent <- x1cent*x2cent

m1 <- lm(y ~ x1 + x2 + x1*x2)
m2 <- lm(y ~ x1cent + x2cent + x1cent*x2cent)

summary(m1)
summary(m2)

Wynik:

> summary(m1)

Call:
lm(formula = y ~ x1 + x2 + x1 * x2)

Residuals:
    Min      1Q  Median      3Q     Max 
-344.62  -66.29   -1.44   66.05  392.22 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)
(Intercept)  193.333    335.281   0.577    0.564
x1           -15.830     33.719  -0.469    0.639
x2           -14.065     33.567  -0.419    0.675
x1:x2          1.179      3.375   0.349    0.727

Residual standard error: 101.3 on 996 degrees of freedom
Multiple R-squared:  0.002363,  Adjusted R-squared:  -0.0006416 
F-statistic: 0.7865 on 3 and 996 DF,  p-value: 0.5015

> summary(m2)

Call:
lm(formula = y ~ x1cent + x2cent + x1cent * x2cent)

Residuals:
    Min      1Q  Median      3Q     Max 
-344.62  -66.29   -1.44   66.05  392.22 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept)     12.513      3.203   3.907 9.99e-05 ***
x1cent          -4.106      3.186  -1.289    0.198    
x2cent          -2.291      3.198  -0.716    0.474    
x1cent:x2cent    1.179      3.375   0.349    0.727    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 101.3 on 996 degrees of freedom
Multiple R-squared:  0.002363,  Adjusted R-squared:  -0.0006416 
F-statistic: 0.7865 on 3 and 996 DF,  p-value: 0.5015


library(perturb)
colldiag(m1)
colldiag(m2)

To, czy wyśrodkujesz inne zmienne, zależy od ciebie; wyśrodkowanie (w przeciwieństwie do standaryzacji) zmiennej, która nie jest zaangażowana w interakcję, zmieni znaczenie przechwytywania, ale nie inne rzeczy, np.

x1 <- rnorm(1000, 10, 1)
x2 <- x1 - mean(x1)
y <- x1 + rnorm(1000, 5, 5) 
m1 <- lm(y ~ x1)
m2 <- lm(y ~ x2)

summary(m1)
summary(m2)

Wynik:

> summary(m1)

Call:
lm(formula = y ~ x1)

Residuals:
     Min       1Q   Median       3Q      Max 
-16.5288  -3.3348   0.0946   3.4293  14.0678 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   6.5412     1.6003   4.087 4.71e-05 ***
x1            0.8548     0.1591   5.373 9.63e-08 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 5.082 on 998 degrees of freedom
Multiple R-squared:  0.02812,   Adjusted R-squared:  0.02714 
F-statistic: 28.87 on 1 and 998 DF,  p-value: 9.629e-08

> summary(m2)

Call:
lm(formula = y ~ x2)

Residuals:
     Min       1Q   Median       3Q      Max 
-16.5288  -3.3348   0.0946   3.4293  14.0678 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  15.0965     0.1607  93.931  < 2e-16 ***
x2            0.8548     0.1591   5.373 9.63e-08 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 5.082 on 998 degrees of freedom
Multiple R-squared:  0.02812,   Adjusted R-squared:  0.02714 
F-statistic: 28.87 on 1 and 998 DF,  p-value: 9.629e-08

Ale powinieneś wziąć dzienniki zmiennych, ponieważ ma to sens lub ponieważ reszty z modelu wskazują, że powinieneś, a nie dlatego, że mają dużą zmienność. Regresja nie przyjmuje założeń dotyczących rozkładu zmiennych, lecz przyjmuje założenia dotyczące rozkładu reszt.

Peter Flom
źródło
1
Dzięki za odpowiedź, Peter! Zakładam więc, że najpierw musiałbym zarejestrować zmienne (wszystkie predyktory?), A następnie wyśrodkować tylko zmienne niezależne wymagane do obliczenia warunków interakcji. Jeszcze jedno pytanie: czy zaleciłbyś wyśrodkowanie lub standaryzację zmiennych? Jeszcze raz wielkie dzięki !!
PhDstudent,
1
Tak, zaloguj się przed centrowaniem. Standaryzacja i centrowanie to różne rzeczy; żadna nie jest zła. Niektórzy lubią standaryzację, zwykle wolę zmienne „surowe”.
Peter Flom
Nie widzę, w jaki sposób zdefiniowanie modelu generującego jako y <- x1 + rnorm(1000, 5, 5) + x2*rnorm(1000) + x1*x2*rnorm(1000)ilustrujące odpowiedź. To znaczyx1+5 a wariancja jest 1+25+1+1, więc w modelu generującym nie ma terminu interakcji.
Rufo