Korrelation zwischen einer nominalen (IV) und einer kontinuierlichen (DV) Variablen


77

Ich habe eine nominelle Variable (verschiedene Gesprächsthemen, codiert als topic0 = 0 usw.) und eine Reihe von Skalenvariablen (DV), wie z. B. die Dauer eines Gesprächs.

Wie kann ich Korrelationen zwischen Nominal- und Skalenvariablen ableiten?


3
Das natürlichste Maß für die Assoziation / Korrelation zwischen einer nominalen (als IV angenommenen) und einer Skala (als DV angenommenen) Variablen ist eta.
TTNPHNS

Wenn ich es richtig verstehe, möchten Sie etwas über die Beziehung zwischen Gesprächsthema (als IV?) Und Gesprächsdauer (DV) sagen. '' zB hypo = Thema 1 bedeutet eine deutlich kürzere Konversation als Thema 2 '', wenn dieses Beispiel so ist, wie Sie es gemeint haben: Sie würden dafür eine ANOVA verwenden (wenn mehr DVs MANOVA oder mehrere Anovas vorhanden sind). Ist dies das, was Sie meinen? Der Satz mit Ihrer Frage ist ziemlich mehrdeutig.
Steven B. Peutz


Antworten:


160

Der Titel dieser Frage deutet auf ein grundlegendes Missverständnis hin. Die grundlegendste Idee der Korrelation lautet: "Wenn eine Variable zunimmt, nimmt die andere Variable zu (positive Korrelation), nimmt ab (negative Korrelation) oder bleibt dieselbe (keine Korrelation)", wobei die perfekte positive Korrelation +1 beträgt. keine Korrelation ist 0 und die perfekte negative Korrelation ist -1. Die Bedeutung von "perfekt" hängt davon ab, welches Maß für die Korrelation verwendet wird: für die Pearson - Korrelation bedeutet dies, dass die Punkte auf einem Streudiagramm direkt auf einer geraden Linie liegen (für +1 nach oben und für -1 nach unten geneigt), für die Spearman - Korrelation, dass die Die Ränge stimmen genau überein (oder stimmen nicht überein, also wird zuerst mit dem letzten für -1 gepaart) und für Kendalls Taudass alle Beobachtungspaare übereinstimmende Ränge haben (oder nicht übereinstimmen für -1). Eine Vorstellung davon, wie dies in der Praxis funktioniert, können Sie den Pearson-Korrelationen für die folgenden Streudiagramme entnehmen ( Bildnachweis ):

Pearson-Korrelation für verschiedene Streudiagramme

Weitere Erkenntnisse ergeben sich aus der Betrachtung des Anscombe-Quartetts, bei dem alle vier Datensätze eine Pearson-Korrelation von +0,816 aufweisen, obwohl sie dem Muster "mit zunehmendem zunehmendem " auf sehr unterschiedliche Weise folgen ( Bildnachweis ):yxy

Streudiagramme für Anscombes Quartett

Wenn Ihre unabhängige Variable nominal ist, ist es nicht sinnvoll, darüber zu sprechen, was "mit zunehmendem " geschieht . In Ihrem Fall hat "Gesprächsthema" keinen numerischen Wert, der auf und ab gehen kann. Sie können "Gesprächsthema" also nicht mit "Gesprächsdauer" korrelieren. Aber wie @ttnphns in den Kommentaren schrieb, gibt es Assoziationsstärkemessungen, die Sie verwenden können und die etwas analog sind. Hier sind einige gefälschte Daten und der dazugehörige R-Code:x

data.df <- data.frame(
    topic = c(rep(c("Gossip", "Sports", "Weather"), each = 4)),
    duration  = c(6:9, 2:5, 4:7)
)
print(data.df)
boxplot(duration ~ topic, data = data.df, ylab = "Duration of conversation")

Welches gibt:

> print(data.df)
     topic duration
1   Gossip        6
2   Gossip        7
3   Gossip        8
4   Gossip        9
5   Sports        2
6   Sports        3
7   Sports        4
8   Sports        5
9  Weather        4
10 Weather        5
11 Weather        6
12 Weather        7

Box Plots für gefälschte Daten

Durch die Verwendung von "Gossip" als Bezugsebene für "Topic" und die Definition von binären Dummy-Variablen für "Sports" und "Weather" können wir eine multiple Regression durchführen.

> model.lm <- lm(duration ~ topic, data = data.df)
> summary(model.lm)

Call:
lm(formula = duration ~ topic, data = data.df)

Residuals:
   Min     1Q Median     3Q    Max 
 -1.50  -0.75   0.00   0.75   1.50 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept)    7.5000     0.6455  11.619 1.01e-06 ***
topicSports   -4.0000     0.9129  -4.382  0.00177 ** 
topicWeather  -2.0000     0.9129  -2.191  0.05617 .  
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 1.291 on 9 degrees of freedom
Multiple R-squared: 0.6809,     Adjusted R-squared: 0.6099 
F-statistic:   9.6 on 2 and 9 DF,  p-value: 0.005861 

Wir können den geschätzten Abschnitt so interpretieren, dass er die durchschnittliche Dauer von Klatschgesprächen mit 7,5 Minuten angibt, und die geschätzten Koeffizienten für die Dummy-Variablen lauten, dass Sportgespräche im Durchschnitt 4 Minuten kürzer waren als Klatschgespräche, während Wettergespräche 2 Minuten kürzer waren als Klatschgespräche. Ein Teil der Ausgabe ist der Bestimmungskoeffizient . Eine Interpretation davon ist, dass unser Modell 68% der Varianz in der Gesprächsdauer erklärt. Eine andere Interpretation von ist, dass wir durch Quadratwurzeln den Mehrfachkorrelationskoeffizienten .R 2 RR2=0.6809R2R

> rsq <- summary(model.lm)$r.squared
> rsq
[1] 0.6808511
> sqrt(rsq)
[1] 0.825137

Beachten Sie, dass 0,825 nicht die Korrelation zwischen Duration und Topic ist - wir können diese beiden Variablen nicht korrelieren, da Topic nominal ist. Was es tatsächlich darstellt, ist die Korrelation zwischen den beobachteten und den von unserem Modell vorhergesagten (angepassten) Dauern . Beide Variablen sind numerisch, sodass wir sie korrelieren können. Tatsächlich sind die angepassten Werte nur die mittleren Dauern für jede Gruppe:

> print(model.lm$fitted)
  1   2   3   4   5   6   7   8   9  10  11  12 
7.5 7.5 7.5 7.5 3.5 3.5 3.5 3.5 5.5 5.5 5.5 5.5 

Zur Überprüfung lautet die Pearson-Korrelation zwischen beobachteten und angepassten Werten:

> cor(data.df$duration, model.lm$fitted)
[1] 0.825137

Wir können dies auf einem Streudiagramm visualisieren:

plot(x = model.lm$fitted, y = data.df$duration,
     xlab = "Fitted duration", ylab = "Observed duration")
abline(lm(data.df$duration ~ model.lm$fitted), col="red")

Visualisieren Sie den Mehrfachkorrelationskoeffizienten zwischen beobachteten und angepassten Werten

Die Stärke dieser Beziehung ist visuell sehr ähnlich zu denen der Diagramme des Anscombe-Quartetts, was nicht verwunderlich ist, da sie alle Pearson-Korrelationen von etwa 0,82 aufwiesen.

Sie werden überrascht sein, dass ich mich bei einer kategorialen unabhängigen Variablen für eine (multiple) Regression und nicht für eine Einweg-ANOVA entschieden habe . Tatsächlich stellt sich dies jedoch als gleichwertiger Ansatz heraus.

library(heplots) # for eta
model.aov <- aov(duration ~ topic, data = data.df)
summary(model.aov)

Dies ergibt eine Zusammenfassung mit identischer F-Statistik und identischem p- Wert:

            Df Sum Sq Mean Sq F value  Pr(>F)   
topic        2     32  16.000     9.6 0.00586 **
Residuals    9     15   1.667                   
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1 

Auch hier passt das ANOVA-Modell genau wie die Regression zum Gruppenmittel:

> print(model.aov$fitted)
  1   2   3   4   5   6   7   8   9  10  11  12 
7.5 7.5 7.5 7.5 3.5 3.5 3.5 3.5 5.5 5.5 5.5 5.5 

Dies bedeutet, dass die Korrelation zwischen angepassten und beobachteten Werten der abhängigen Variablen dieselbe ist wie für das multiple Regressionsmodell. Das "Anteil der Varianz erklärt" -Maß für die multiple Regression hat ein ANOVA-Äquivalent, ( ; im Quadrat). Wir können sehen, dass sie zusammenpassen.η 2R2η2

> etasq(model.aov, partial = FALSE)
              eta^2
topic     0.6808511
Residuals        NA

In diesem Sinne wäre das nächste Analogon zu einer "Korrelation" zwischen einer nominalen erklärenden Variablen und einer kontinuierlichen Antwort , die Quadratwurzel von , die das Äquivalent des Mehrfachkorrelationskoeffizienten für die Regression ist. Dies erklärt die Bemerkung, dass "das natürlichste Maß für die Assoziation / Korrelation zwischen einer nominalen (als IV angenommenen) und einer Skala (als DV angenommenen) Variablen eta ist". Wenn Sie mehr an dem erklärten Anteil der Varianz interessiert sind , können Sie bei eta squared (oder dessen Regressionsäquivalent ) bleiben . Bei ANOVA stößt man oft auf das Teilη 2 R R 2ηη2RR2eta im Quadrat. Da es sich bei dieser ANOVA um eine Einbahnstraße handelte (es gab nur einen kategorialen Prädiktor), ist das partielle ETA-Quadrat dasselbe wie das ETA-Quadrat, aber die Dinge ändern sich in Modellen mit mehr Prädiktoren.

> etasq(model.aov, partial = TRUE)
          Partial eta^2
topic         0.6808511
Residuals            NA

Es ist jedoch durchaus möglich, dass weder "Korrelation" noch "Anteil der erklärten Varianz" das Maß für die gewünschte Effektgröße ist. Zum Beispiel könnte Ihr Fokus mehr darauf liegen, wie sich die Mittel zwischen den Gruppen unterscheiden. Diese Frage und Antwort enthält weitere Informationen zu eta squared, partial eta squared und verschiedenen Alternativen.


4
R0.82

ηRηη

r=0.9R=0.9ηRr

ηrR

eta21
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.