Bayesowska analiza tabel awaryjnych: Jak opisać wielkość efektu

9

Pracuję nad przykładami z Doing Bayesian Data Analysis Kruschke , a konkretnie wykładniczą ANOVA wykładniczą Poissona w rozdz. 22, który przedstawia jako alternatywę dla częstych testów chi-kwadrat niezależności dla tabel awaryjnych.

Widzę, w jaki sposób otrzymujemy informacje o interakcjach, które występują częściej lub rzadziej niż można by się spodziewać, gdyby zmienne były niezależne (tj. Kiedy HDI wyklucza zero).

Moje pytanie brzmi: w jaki sposób mogę obliczyć lub zinterpretować wielkość efektu w tych ramach? Na przykład Kruschke pisze „połączenie niebieskich oczu z czarnymi włosami zdarza się rzadziej niż można by oczekiwać, gdyby kolor oczu i kolor włosów były niezależne”, ale jak możemy opisać siłę tego skojarzenia? Jak mogę stwierdzić, które interakcje są bardziej ekstremalne niż inne? Gdybyśmy przeprowadzili test chi-kwadrat tych danych, moglibyśmy obliczyć V Craméra jako miarę ogólnej wielkości efektu. Jak wyrazić wielkość efektu w tym kontekście bayesowskim?

Oto samodzielny przykład z książki (zakodowany R), na wypadek gdyby odpowiedź była dla mnie ukryta na pierwszy rzut oka ...

df <- structure(c(20, 94, 84, 17, 68, 7, 119, 26, 5, 16, 29, 14, 15, 
10, 54, 14), .Dim = c(4L, 4L), .Dimnames = list(c("Black", "Blond", 
"Brunette", "Red"), c("Blue", "Brown", "Green", "Hazel")))

df

         Blue Brown Green Hazel
Black      20    68     5    15
Blond      94     7    16    10
Brunette   84   119    29    54
Red        17    26    14    14

Oto wyniki częstych z miarami wielkości efektu (nie w książce):

vcd::assocstats(df)
                    X^2 df P(> X^2)
Likelihood Ratio 146.44  9        0
Pearson          138.29  9        0

Phi-Coefficient   : 0.483 
Contingency Coeff.: 0.435 
Cramer's V        : 0.279

Oto wynik Bayesa z HDI i prawdopodobieństwami komórek (bezpośrednio z książki):

# prepare to get Krushkes' R codes from his web site
Krushkes_codes <- c(
  "http://www.indiana.edu/~kruschke/DoingBayesianDataAnalysis/Programs/openGraphSaveGraph.R", 
  "http://www.indiana.edu/~kruschke/DoingBayesianDataAnalysis/Programs/PoissonExponentialJagsSTZ.R")

# download Krushkes' scripts to working directory
lapply(Krushkes_codes, function(i) download.file(i, destfile = basename(i)))

# run the code to analyse the data and generate output
lapply(Krushkes_codes, function(i) source(basename(i)))

A oto wykresy tylnego modelu wykładniczego Poissona zastosowanego do danych:

wprowadź opis zdjęcia tutaj

I wykresy rozkładu tylnego na szacowanych prawdopodobieństwach komórki:

wprowadź opis zdjęcia tutaj

Ben
źródło

Odpowiedzi:

1

Według indeksu Kruschke wspomina tylko o wielkości efektu dwa razy i oba razy są w kontekście zmiennej przewidywanej metryki. Ale jest to trochę na p. 601:

Jeśli badacz jest zainteresowany naruszeniem niezależności, wówczas interesuje go wielkość βrc. Model jest szczególnie przydatny do tego celu, ponieważ można zbadać dowolne kontrasty interakcji, aby ustalić, gdzie powstaje brak niezależności.

Więc to rozumiem β1,2to parametr do interpretacji. PozwolićS równa się sumie produktów wszystkich współczynników i odpowiadających im elementów x, z wyłączeniem β1,2 i x1,2. OdyiPois(λi) i λi=eβ1,2x1,2+S=eβ1,2x1,2eS. Kiedyx1,2 = 1 zatem λi rośnie lub kurczy się o współczynnik eβ1,2nie

Sean Easter
źródło
1

Jednym ze sposobów badania wielkości efektu w modelu ANOVA jest spojrzenie na odchylenia standardowe „super populacji” i „populacji skończonej”. Masz tabelę dwukierunkową, więc są to 3 komponenty wariancji (2 główne efekty i 1 interakcja). Jest to oparte na analizie mcmc. Obliczasz odchylenie standardowe dla każdego efektu dla każdej próbki mcmc.

sk=1dk1j=1dk(βk,jβ¯k)2

Gdzie kindeksuje „wiersz” tabeli ANOVA. Proste wykresy pudełkowe próbek mcmcsk vs k są dość pouczające w zakresie rozmiarów efektów.

Andrew Gelman opowiadał się za takim podejściem. Zobacz jego artykuł z 2005 r. „Analiza wariancji: dlaczego jest ważniejsza niż kiedykolwiek”

prawdopodobieństwo prawdopodobieństwa
źródło
Ten papier jest dostępny tutaj .
Sean Easter
Obie te odpowiedzi wydają się bardzo obiecujące, dzięki. Czy któryś z was zna się na tyle, Raby pokazać, jak można go zaprogramować?
Ben
@seaneaster - dziękuję za dodanie linku. @ben, te obliczenia są proste w R. Jednak nie jestem pewien, w jakiej formie są twoje próbki. Powinieneś być w stanie używać w sd ()połączeniu z jedną z funkcji „zastosuj”. Jeśli chodzi o wykresy pudełkowe, można je łatwo uzyskać za pomocą prostych boxplot ().
probabilityislogic
Dzięki, czy możesz zademonstrować użycie przykładowych danych i kodu w moim pytaniu?
Ben
Krótko mówiąc, nie, ponieważ nie rozumiem kodu, który opublikowałeś - nie widzę sposobu organizacji danych. I jak powiedziałem, nie jest to trudna analiza dla ciebie. Podejście to oblicza prostą miarę (odchylenie standardowe). Dodatkowo kodowanie R nie jest częścią twojego pytania - zapytałeś o sposób podsumowania analizy tabeli awaryjnej.
probabilityislogic