Jak badać „korelację” między zmienną ciągłą a zmienną kategorialną?

19

Czym jest miarodajna miara „korelacji” do badania związku między tymi dwoma typami zmiennych?

W R, jak to zrobić?

Luna
źródło
1
zanim zapytasz „jak się uczysz”, powinieneś znaleźć odpowiedź na „jak zdefiniować” :-) BTW, jeśli rzutujesz zmienną kategorialną na liczby całkowite, możesz już dokonać korelacji.
Ciekawy
2
@Tomas, jeśli to zrobisz, szacunkowa siła związku zależy od tego, jak zdecydowałeś się oznaczyć punkty, co jest trochę przerażające :)
Makro
@Macro, masz rację - kolejny solidny argument za dobrą definicją!
Ciekawy
@Macro Chyba że źle zrozumiałem twój punkt widzenia, nie. Korelacja jest niewrażliwa na przekształcenia liniowe. Zatem cor (X, Y) = cor (a + bX, Y) dla skończonych a i b. Ponowne oznakowanie 0/1 jako 1/11 nie wpływa na korelacje przy użyciu tej zmiennej lub jej liniowej transformacji.
Alexis
@Curious patrz mój komentarz do makra powyżej. I zauważ: (1) X <- sample(c(0,1),replace=TRUE,size=100)(2) Y <- X + rnorm(100,0.5)(3) corr(Y,X)(4) X <- 1 + 10*X(5) corr(X,Y): takie same wyniki dla obu korelacji!
Alexis

Odpowiedzi:

19

Przez chwilę zignorujmy problem ciągły / dyskretny. Zasadniczo korelacja mierzy siłę liniowej zależności między zmiennymi, a wydaje się, że pytasz o alternatywny sposób pomiaru siły relacji. Być może zainteresuje Cię kilka pomysłów z teorii informacji . W szczególności myślę, że możesz chcieć spojrzeć na wzajemne informacje . Wzajemne informacje zasadniczo umożliwiają oszacowanie, ile znajomości stanu jednej zmiennej mówi o drugiej zmiennej. Myślę, że ta definicja jest bliższa temu, co większość ludzi ma na myśli, kiedy myśli o korelacji.

Dla dwóch zmiennych dyskretnych X i Y obliczenia są następujące:

I(X;Y)=yYxXp(x,y)log(p(x,y)p(x)p(y))

W przypadku dwóch zmiennych ciągłych całkujemy zamiast sumować:

I(X;Y)=YXp(x,y)log(p(x,y)p(x)p(y))dxdy

Twój szczególny przypadek użycia dotyczy jednego dyskretnego i jednego ciągłego. Zamiast całkować sumę lub sumować całkę, wyobrażam sobie, że łatwiej byłoby przekonwertować jedną ze zmiennych na inny typ. Typowym sposobem na to byłoby dyskretyzowanie zmiennej ciągłej na dyskretne przedziały.

Istnieje wiele sposobów dyskrecji danych (np. Równe odstępy) i uważam, że pakiet entropii powinien być pomocny w obliczeniach MI, jeśli chcesz użyć R.

Michael McGowan
źródło
1
Dzięki. Ale jak wysoki MI odpowiada corr = 1, a jak niski MI odpowiada corr = 0?
Luna
MI ma wartość minimalną 0, a MI = 0 wtedy i tylko wtedy, gdy zmienne są niezależne. MI nie ma jednak stałej górnej granicy (górna granica jest związana z entropiami zmiennych), więc możesz spojrzeć na jedną ze znormalizowanych wersji, jeśli jest to dla ciebie ważne.
Michael McGowan
6

Jeśli zmienna kategorialna jest porządkowa, a zmienną ciągłą dzielisz na kilka przedziałów częstotliwości, możesz użyć wartości gamma. Dostępne również dla sparowanych danych w postaci porządkowej są tau Kendala, tau Stuarta i Somers D. Wszystkie są dostępne w SAS przy użyciu Proc Freq. Nie wiem, jak są obliczane przy użyciu procedur R. Oto link do prezentacji, która zawiera szczegółowe informacje: http://faculty.unlv.edu/cstream/ppts/QM722/measuresofassociation.ppt#260,5,Środki stowarzyszenia dla zmiennych nominalnych i porządkowych

Michael R. Chernick
źródło
1

Zmienna kategoryczna jest w rzeczywistości tylko zbiorem zmiennych wskaźnikowych. Podstawową ideą teorii pomiarów jest to, że taka zmienna jest niezmienna w przypadku ponownego etykietowania kategorii, więc nie ma sensu stosowanie numerycznego oznaczania kategorii w żadnej miary związku między inną zmienną (np. „Korelacja”) . Z tego powodu pomiar zależności między zmienną ciągłą a zmienną kategorialną powinien opierać się całkowicie na zmiennych wskaźnikowych pochodzących z tej ostatniej.

Biorąc pod uwagę, że potrzebna jest miara „korelacji” między dwiema zmiennymi, warto spojrzeć na korelację między ciągłą zmienną losową a losową zmienną wskaźnikową I wyprowadzoną ze zmiennej kategorialnej. Letting ϕ P (XI mamy:ϕP(I=1)

Cov(I,X)=E(IX)E(I)E(X)=ϕ[E(X|I=1)E(X)],

co daje:

Corr(I,X)=ϕ1ϕE(X|I=1)E(X)S(X).

Tak więc korelacja między ciągłą zmienną losową a losową zmienną wskaźnikową I jest dość prostą funkcją prawdopodobieństwa wskaźnika ϕ i znormalizowanego przyrostu oczekiwanej wartości X z warunkowania na I = 1 . Zauważ, że ta korelacja nie wymaga dyskretyzacji ciągłej zmiennej losowej.XIϕXI=1


Dla ogólnego skategoryzowany o zakresie 1 , . . . , m po prostu rozszerzyłbyś ten pomysł, aby mieć wektor wartości korelacji dla każdego wyniku zmiennej kategorialnej. Dla każdego wyniku C = k możemy zdefiniować odpowiedni wskaźnik I kI ( C = k ) i mamy:C1,...,mC=kIkI(C=k)

Corr(Ik,X)=ϕk1ϕkE(X|C=k)E(X)S(X).

Corr(C,X)(Corr(I1,X),...,Corr(Im,X))

kCov(Ik,X)=0Xm1


(x1,c1),...,(xn,cn)

ϕ^k1ni=1nI(ci=k).

E^(X)x¯1ni=1nxi.

E^(X|C=k)x¯k1ni=1nxiI(ci=k)/ϕ^k.

S^(X)sX1n1i=1n(xix¯)2.

Substitution of these estimates would yield a basic estimate of the correlation vector. If you have parametric information on X then you could estimate the correlation vector directly by maximum likelihood or some other technique.

Reinstate Monica
źródło
0

R package mpmi has the ability to calculate mutual information for mixed variable case, namely continuous and discrete. Although there are other statistical options like (point) biserial correlation coefficient to be useful here, it would be beneficial and highly recommended to calculate mutual information since it can detect associations other than linear and monotonic.

siyisoy
źródło
0

If X is a continuous random variable and Y is a categorical r.v.. the observed correlation between X and Y can be measured by

  1. the point-biserial correlation coefficient, if Y is dichotomous;
  2. the point-polyserial correlation coefficient, if Y is polychotomous with ordinal categories.

It should be noted, though, that the point-polyserial correlation is just a generalization of the point-biserial.

For a broader view, here's a table from Olsson, Drasgow & Dorans (1982)[1].

correlation coefficients

[1]: Source: Olsson, U., Drasgow, F., & Dorans, N. J. (1982). The polyserial correlation coefficient. Psychometrika, 47(3), 337–347

Waldir Leoncio
źródło