Od exp (współczynników) do ilorazu szans i ich interpretacji w regresji logistycznej z czynnikami


14

Przeprowadziłem liniową regresję akceptacji na studia w porównaniu z wynikami SAT i pochodzeniem rodzinnym / etnicznym. Dane są fikcyjne. Jest to kontynuacja wcześniejszego pytania, na które już udzielono odpowiedzi. Pytanie skupia się na zbieraniu i interpretacji ilorazów szans, gdy pomija się wyniki SAT dla uproszczenia.

Zmienne to Accepted(0 lub 1) i Background(„czerwony” lub „niebieski”). Skonfigurowałem dane, aby osoby z „czerwonym” pochodzeniem miały większe szanse na wejście:

fit <- glm(Accepted~Background, data=dat, family="binomial")
exp(cbind(Odds_Ratio_RedvBlue=coef(fit), confint(fit)))

                        Odds_Ratio_RedvBlue             2.5 %       97.5 %
(Intercept)             0.7088608                     0.5553459   0.9017961
Backgroundred           2.4480042                     1.7397640   3.4595454

Pytania:

  1. Czy 0,7 jest nieparzysty w stosunku do osoby o „niebieskim” tle? Proszę o to, ponieważ dostaję 0.7 za „ Backgroundblue”, jeśli zamiast tego uruchomię następujący kod:

    fit <- glm(Accepted~Background-1, data=dat, family="binomial")
    exp(cbind(OR=coef(fit), confint(fit)))
  2. ZAdodomiptmire/Rmire:ZAdodomiptmire/blumiOreresblumi=1/OreresRmire


1
To, co Rwyraźnie nazywa współczynniki (za pomocą funkcji coef), nazywa się „ilorazem szans” na wyjściu. To sugeruje, że warto zrewidować różnicę między nimi.
— whuber

Przeczytałem post na twoim hiperlinku.
— Antoni Parellada,

Współczynniki są wykładnicze: exp (coef (fit)).
— Antoni Parellada,

Tak: i jak wyjaśniono w mojej odpowiedzi w tym wątku, potęgowanie przechwytywania daje szanse na przypadek referencyjny.
— whuber

Odpowiedzi:


13

Pracowałem nad odpowiedzią na moje pytanie, obliczając ręcznie szanse i iloraz szans:

Acceptance   blue            red            Grand Total
0            158             102                260
1            112             177                289
Total        270             279                549

Tak więc iloraz szans dostania się do szkoły Red over Blue wynosi:

Oreres ZAdodomipt jafa RmireOreres ZAdododomipt jafa blumi=177/102112/158=1,73530,7089=2,448

I to jest Backgroundredpowrót:

fit <- glm(Accepted~Background, data=dat, family="binomial")
exp(cbind(Odds_and_OR=coef(fit), confint(fit)))

                      Odds_and_OR                         2.5 %      97.5 %
(Intercept)             0.7088608                     0.5553459   0.9017961
Backgroundred           2.4480042                     1.7397640   3.4595454

Jednocześnie (Intercept)odpowiada licznikowi ilorazu szans , który jest dokładnie szansą na uzyskanie „niebieskiego” tła rodzinnego:112/158=0,7089.

Jeśli zamiast tego uruchamiam:

fit2 <- glm(Accepted~Background-1, data=dat, family="binomial")
exp(cbind(Odds=coef(fit2), confint(fit2)))

                        Odds            2.5 %      97.5 %
Backgroundblue     0.7088608        0.5553459   0.9017961
Backgroundred      1.7352941        1.3632702   2.2206569

Zwroty to dokładnie szansa na uzyskanie „niebieskiego”: Backgroundblue(0,7089) i szansa na przyjęcie bycia „czerwonym”: Backgroundred(1,7353). Nie ma tam współczynnika szans . Dlatego te dwie zwracane wartości nie powinny być wzajemne.

Wreszcie, jak odczytać wyniki, jeśli w kategorycznym regresorze występują 3 czynniki?

Takie same obliczenia ręczne w porównaniu z [R]:

Stworzyłem inny fikcyjny zestaw danych z tą samą przesłanką, ale tym razem były trzy pochodzenie etniczne: „czerwony”, „niebieski” i „pomarańczowy”, i prowadziłem tę samą sekwencję:

Po pierwsze, tabela awaryjna:

Acceptance  blue    orange  red   Total
0             86        65  130     281
1             64        42  162     268
Total        150       107  292     549

I obliczył szanse dostania się dla każdej grupy etnicznej:

  • Kursy są akceptowane, jeśli czerwony = 1,246154;
  • Kursy są akceptowane, jeśli niebieski = 0,744186;
  • Kursy są akceptowane, jeśli Orange = 0,646154

Jak również różne iloraz szans :

  • LUB czerwony v niebieski = 1,674519;
  • LUB czerwony v pomarańczowy = 1,928571;
  • LUB niebieski v czerwony = 0,597186;
  • LUB niebieski kontra pomarańczowy = 1,151717;
  • LUB pomarańczowy v czerwony = 0,518519; i
  • LUB pomarańczowy v niebieski = 0,868269

Kontynuowano rutynową regresję logistyczną, a następnie potęgowanie współczynników:

fit <- glm(Accepted~Background, data=dat, family="binomial")
exp(cbind(ODDS=coef(fit), confint(fit)))

                      ODDS     2.5 %   97.5 %
(Intercept)      0.7441860 0.5367042 1.026588
Backgroundorange 0.8682692 0.5223358 1.437108
Backgroundred    1.6745192 1.1271430 2.497853

Uzyskując szanse na dostanie się do „bluesa” jako (Intercept), oraz iloraz szans pomarańczowego w stosunku do niebieskiego w Backgroundorange, oraz iloraz szans czerwonego w niebieskiego w Backgroundred.

Z drugiej strony regresja bez przechwytywania w sposób przewidywalny zwróciła tylko trzy niezależne szanse :

fit2 <- glm(Accepted~Background-1, data=dat, family="binomial")
exp(cbind(ODDS=coef(fit2), confint(fit2)))

                      ODDS     2.5 %    97.5 %
Backgroundblue   0.7441860 0.5367042 1.0265875
Backgroundorange 0.6461538 0.4354366 0.9484999
Backgroundred    1.2461538 0.9900426 1.5715814

Gratulacje, dobrze się spisałeś.
— Gung - Przywróć Monikę
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.