Interprétation des bêtas lorsqu'il existe plusieurs variables catégorielles


18

Je crois que le concept ß 0 est la moyenne lorsque la variable nominale est égale à 0 (ou est le groupe de référence), ce qui donne l'interprétation d'extrémité que le coefficient de régression est la différence moyenne des deux catégories. Même avec> 2 catégories Je suppose que chaque β explique la différence entre la moyenne et la référence de cette catégorie.β^0β^

Mais que se passe-t-il si davantage de variables sont introduites dans le modèle multivariable? Maintenant, que signifie l'interception étant donné qu'il n'a pas de sens que ce soit la moyenne pour la référence de deux variables catégorielles? Un exemple serait si le sexe (M (réf) / F) et la race (blanc (réf) / noir) étaient tous les deux dans un modèle. Le β 0 la moyenne pour les hommes blancs seulement? Comment interprète-t-on d'autres possibilités?β^0

En tant que note distincte: les déclarations de contraste servent-elles de méthode pour étudier la modification de l'effet? Ou juste pour voir l'effet ( β ) à différents niveaux?β^


En tant que note terminologique, «multivarié» signifie plusieurs variables de réponse , pas plusieurs variables prédictives (voir ici ). De plus, je ne suis pas votre dernière question.
gung - Réintégrer Monica

Merci pour cette précision. Obtenir la langue correcte est important pour moi! Je suppose que je ne peux tout simplement pas comprendre pourquoi les déclarations de contraste sont utilisées du tout, car on pourrait toujours simplement définir la variable de référence à celle contre laquelle on contraste?
Renee

1
Je suppose que vous pouvez simplement continuer à réadapter le modèle avec différents niveaux de référence. Je ne suis pas sûr que ce soit plus pratique. Avec les contrastes, vous pouvez également spécifier un ensemble de contrastes orthogonaux ou un contraste théoriquement implicite (A vs combinaison de B&C) à tester.
gung - Rétablir Monica

Réponses:


19

Vous avez raison sur l'interprétation des bêtas quand il y a une seule variable catégorielle avec k niveaux. S'il y avait plusieurs variables catégoriques (et il n'y avait pas d'interaction), l'interception ( β 0β^0 ) est la moyenne du groupe qui constitue le niveau de référence pour les deux (toutes) variables. En utilisant votre exemple de scénario, considérez le cas où il n'y a pas d'interaction, alors les bêtas sont:

  • β^0 : la moyenne des hommesrace blanche
  • β^Female: ladifférenceentre la moyenne des femmes et la moyenne des hommes
  • β^Black: ladifférenceentre la moyenne des noirs et la moyenne des blancs

On peut aussi penser à cela en termes de calcul des différents moyens de groupe:

X¯Whjete Muneles=β^0X¯Whjete Femuneles=β^0+β^FemuneleX¯Bluneck Muneles=β^0+β^BluneckX¯Bluneck Femuneles=β^0+β^Femunele+β^Bluneck

Si vous aviez un terme d'interaction, il serait ajouté à la fin de l'équation pour les femmes noires. (L'interprétation d'un tel terme d'interaction est assez compliquée, mais je le parcours ici: Interprétation du terme d'interaction .)


Mise à jour : pour clarifier mes points, considérons un exemple standard, codé R.

d = data.frame(Sex  =factor(rep(c("Male","Female"),times=2), levels=c("Male","Female")),
               Race =factor(rep(c("White","Black"),each=2),  levels=c("White","Black")),
               y    =c(1, 3, 5, 7))
d
#      Sex  Race y
# 1   Male White 1
# 2 Female White 3
# 3   Male Black 5
# 4 Female Black 7

entrez la description de l'image ici

Les moyennes de ypour ces variables catégorielles sont:

aggregate(y~Sex,  d, mean)
#      Sex y
# 1   Male 3
# 2 Female 5
## i.e., the difference is 2
aggregate(y~Race, d, mean)
#    Race y
# 1 White 2
# 2 Black 6
## i.e., the difference is 4

Nous pouvons comparer les différences entre ces moyennes aux coefficients d'un modèle ajusté:

summary(lm(y~Sex+Race, d))
# ...
# Coefficients:
#             Estimate Std. Error  t value Pr(>|t|)    
# (Intercept)        1   3.85e-16 2.60e+15  2.4e-16 ***
# SexFemale          2   4.44e-16 4.50e+15  < 2e-16 ***
# RaceBlack          4   4.44e-16 9.01e+15  < 2e-16 ***
# ...
# Warning message:
#   In summary.lm(lm(y ~ Sex + Race, d)) :
#   essentially perfect fit: summary may be unreliable

La chose à reconnaître à propos de cette situation est que, sans terme d'interaction, nous supposons des lignes parallèles. Ainsi, le Estimatepour le (Intercept)est la moyenne des hommes blancs. Le Estimatepour SexFemaleest la différence entre la moyenne des femmes et la moyenne des hommes. Le EstimatepourRaceBlack est la différence entre la moyenne des noirs et la moyenne des blancs. Encore une fois, comme un modèle sans terme d'interaction suppose que les effets sont strictement additifs (les lignes sont strictement parallèles), la moyenne des femelles noires est alors la moyenne des mâles blancs plus la différence entre la moyenne des femelles et la moyenne des mâles plus la différence entre la moyenne des noirs et la moyenne des blancs.


Je vous remercie! Très clair et utile. À la fin, vous mentionnez les termes d'interaction. Si l'on fait un terme d'interaction, comment cela modifie-t-il les bêtas (c'est-à-dire les nouveaux bêtas du modèle de terme d'interaction)? Je sais que la valeur de p pour le terme d'interaction est importante, mais le terme d'interaction bêta a-t-il une interprétation significative? Merci encore pour votre aide!
Renee

1
β^Femalex¯White Malex¯White Female

Logique. Je vous remercie! & il est modifié du modèle sans terme d'interaction en raison du terme d'interaction améliorant l'effet principal? Ce qui signifie que s'il n'y a pas d'interaction, le terme d'effet principal serait théoriquement le même?
Renee

Si l'effet d'interaction était exactement de 0 (à la décimale infinie), non seulement dans la population, mais aussi dans votre échantillon, le bêta d'effet principal serait le même dans un modèle avec ou sans terme d'interaction.
gung - Réintégrer Monica

1
@ hans0l0, ce serait mieux comme une nouvelle question plutôt que des informations enterrées ici dans les commentaires; vous pouvez lier à cela pour le contexte. En bref, c'est la moyenne des niveaux de référence lorsque toutes les variables continues sont = 0.
gung - Rétablir Monica

6

β^0β^

Si nous étendons un peu votre exemple pour inclure un troisième niveau à la catégorie de course (disons asiatique ) et choisissons le blanc comme référence, alors vous auriez:

  • β^0=x¯White
  • β^Black=x¯Blackx¯White
  • β^Asian=x¯Asianx¯White

In this case, the interpretation of all the β^ is easy and finding the mean of any level of the category is straightforward. For example:

  • x¯Asian=β^Asian+β^0

Unfortunately in the case of multiple categorical variables, the correct interpretation for the intercept is no longer as clear (see note at the end). When there is n categories, each with multiple levels and one reference level (e.g. White and Male in you example), the general form for the intercept is:

β^0=i=1nx¯reference,i(n1)x¯,
where
x¯reference,i is the mean of the reference level of the i-th categorical variable,
x¯ is the mean of the whole data set

The other β^ are the same as with a single category: they are the difference between the mean of that level of the category and the mean of the reference level of the same category.

If we go back to your example, we would get:

  • β^0=x¯White+x¯Malex¯
  • β^Black=x¯Blackx¯White
  • β^Asian=x¯Asianx¯White
  • β^Female=x¯Femalex¯Male

You will notice that the mean of the cross categories (e.g. White males) are not present in any of the β^. As a matter of fact, you cannot calculate these means precisely from the results of this type of regression.

The reason for this is that, the number of predictor variables (i.e. the β^) is smaller then the number of cross categories (as long as you have more than 1 category) so a perfect fit is not always possible. If we go back to your example, the number of predictors is 4 (i.e. β^0, β^Black, β^Asian and β^Female) while the number of cross categories is 6.

Numerical Example

Permettez-moi d'emprunter à @Gung pour un exemple numérique en conserve:

d = data.frame(Sex=factor(rep(c("Male","Female"),times=3), levels=c("Male","Female")),
    Race =factor(rep(c("White","Black","Asian"),each=2),levels=c("White","Black","Asian")),
    y    =c(0, 3, 7, 8, 9, 10))
d

#      Sex  Race  y
# 1   Male White  0
# 2 Female White  3
# 3   Male Black  7
# 4 Female Black  8
# 5   Male Asian  9
# 6 Female Asian 10

Dans ce cas, les différentes moyennes qui iront dans le calcul de la β^ sont:

aggregate(y~1,  d, mean)

#          y
# 1 6.166667

aggregate(y~Sex,  d, mean)

#      Sex        y
# 1   Male 5.333333
# 2 Female 7.000000

aggregate(y~Race, d, mean)

#    Race   y
# 1 White 1.5
# 2 Black 7.5
# 3 Asian 9.5

Nous pouvons comparer ces chiffres avec les résultats de la régression:

summary(lm(y~Sex+Race, d))

# Coefficients:
#             Estimate Std. Error t value Pr(>|t|)
# (Intercept)   0.6667     0.6667   1.000   0.4226
# SexFemale     1.6667     0.6667   2.500   0.1296
# RaceBlack     6.0000     0.8165   7.348   0.0180
# RaceAsian     8.0000     0.8165   9.798   0.0103

Comme vous pouvez le voir, les différents β^estimés à partir de la régression, tous correspondent aux formules données ci-dessus. Par exemple,β^0 est donné par:

β^0=X¯Whjete+X¯Munele-X¯
Qui donne:
1.5 + 5.333333 - 6.166667
# 0.66666

Remarque sur le choix du contraste

Une dernière note sur ce sujet, tous les résultats discutés ci-dessus concernent les régressions catégoriques utilisant un traitement de contraste (le type de contraste par défaut dans R). Il existe différents types de contraste qui peuvent être utilisés (notamment Helmert et sum) et cela changerait l'interprétation des différentsβ^. Cependant, cela ne changerait pas les prédictions finales des régressions (par exemple, la prédiction pour les hommes blancs est toujours la même quel que soit le type de contraste que vous utilisez).

Mon préféré est la somme de contraste, car j'estime que l'interprétation de la β^contr.sum generalises better when there are multiple categories. For this type of contrast, there is no reference level, or rather the reference is the mean of the whole sample, and you have the following β^contr.sum:

  • β^0contr.sum=x¯
  • β^icontr.sum=x¯ix¯

If we go back to the previous example, you would have:

  • β^0contr.sum=x¯
  • β^Whitecontr.sum=x¯Whitex¯
  • β^Blackcontr.sum=x¯Blackx¯
  • β^Asiancontr.sum=x¯Asianx¯
  • β^Malecontr.sum=x¯Malex¯
  • β^Femalecontr.sum=x¯Femalex¯

You will notice that because White and Male are no longer reference levels, their β^contr.sum are no longer 0. The fact that these are 0 is specific to contrast treatment.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.