Wie teste ich die statistische Signifikanz für kategoriale Variablen in der linearen Regression?

18

Wenn ich in einer linearen Regression eine kategoriale Variable habe ... woher weiß ich, welche statistische Bedeutung die kategoriale Variable hat?

Nehmen wir an, der Faktor hat 10 Stufen ... es gibt 10 verschiedene resultierende t-Werte unter dem Dach einer Faktorvariablen ...X 1X1X1

Es scheint mir, dass die statistische Signifikanz für jede Ebene der Faktorvariablen getestet wird? Nein?

@Macro: Nach Ihrem Vorschlag habe ich das folgende Beispiel erstellt:

Aus dem folgenden Modellvergleich geht hervor, dass x3 nützlich ist und in das Modell aufgenommen werden muss.

Aber eigentlich ist das falsch ...

n=100    
x1=1:n
x2=(1:n)^2 
x3=rnorm(n)
ee=rnorm(n)
y=3*x1-2*x2+x3+3+ee
lm1=lm(y~x1+x2+x3)
summary(lm1)

lm2=lm(y~x1+x2) 
summary(lm2)

anova(lm1, lm2)

> anova(lm1, lm2)
Analysis of Variance Table

Model 1: y ~ x1 + x2 + x3
Model 2: y ~ x1 + x2
  Res.Df     RSS Df Sum of Sq      F    Pr(>F)    
1     96  82.782                                  
2     97 146.773 -1    -63.99 74.207 1.401e-13 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 
Luna
quelle
1
@Luna, warum ist das falsch? Es scheint, als hätten Sie x3das ys generiert , daher sollte es in das Modell aufgenommen werden, und der Wert stimmt mit dieser Schlussfolgerung überein. p
Makro
@Seth - du hast recht. Ich habe nur ein Spielzeugbeispiel für die Verwendung von Anova im Allgemeinen im Modellvergleich gegeben. Es ist also nicht mit meiner ursprünglichen Frage verknüpft.
Luna
@Macro - du hast recht. Jetzt verstehe ich den Punkt. Vielen Dank!
Luna
Mit der Funktion 'Anova' aus dem Paket 'R' car '( pdf ) können Sie die Gesamtbedeutung einer kategorialen Variablen testen. Es funktioniert mit vielen verschiedenen Paketen und Regressionstypen.
SK4ndal

Antworten:

28

p

Wenn das Modell andere Prädiktoren enthält. Sie haben zwei Möglichkeiten, um die Signifikanz eines kategorialen Prädiktors zu testen:

Y.ichXich1,...,XichpCichk

Y.ich=β0+β1Xich1+...+βpXichp+εich

Rlm()logLikL0

Y.ich=β0+β1Xich1+...+βpXichp+j=1k-1αjBj+εich

Bj1Dich=j0kk-1Rlm()L1Dich

λ=2(L1-L0)

χ2k-1p1-pchisq(2*(L1-L0),df=k-1)R

FRRlm()g1g0anova(g1,g0)

F

Makro
quelle
Vielen Dank, Macro. Ich habe festgestellt, dass meine Daten sehr ungewöhnlich sind. Das QQ-Diagramm sieht wie folgt aus: Die Kurve liegt alle unterhalb der geraden 45-Grad-Linie. Die Kurve ist tangential zu dieser geraden Linie. Und die Kurve sieht aus wie die Kurve von f (x) = - x ^ 2 (formmäßig). Was für ein Problem habe ich? Und wie soll ich das beheben? Vielen Dank!
Luna
1
@Luna, Deine Daten sind sehr unüblich oder die Reste sind sehr unüblich? Ich glaube auch nicht, dass der gesamte Punktesatz unter der 45-Grad-Linie liegen kann.
Makro
Oh, eigentlich hast du recht ... Ich habe mir die QQ-Handlung noch einmal angesehen. Es ist nicht der gesamte Satz von Punkten, der unter der 45-Grad-Linie liegt. Es ist die Kurve mit der Form von f (x) = - x ^ 2 ist "tangential" zur 45-Grad-Linie. Mit "Tangente" hätte ich meinen sollen, dass diese Punkte um den "Tangente" -Punkt tatsächlich über der 45-Grad-Linie liegen, allerdings nur geringfügig. Aus visuellen Gründen befinden sich die meisten Daten (~ 98%) unterhalb der 45-Grad-Linie. Was muss ich tun, um dieses Problem zu beheben, bevor ein Modellvergleich durchgeführt wird? Vielen Dank!
Luna
2
p
1
@Druss2k, ja das stimmt.
Makro