Wie ist es möglich, dass Poisson GLM nicht ganzzahlige Zahlen akzeptiert?


17

Ich bin wirklich fassungslos, dass der Poisson GLM nicht ganzzahlige Zahlen akzeptiert! Aussehen:

Daten (Inhalt von data.txt):

1   2001    0.25  1
1   2002    0.5   1
1   2003    1     1
2   2001    0.25  1
2   2002    0.5   1
2   2003    1     1

R-Skript:

t        <- read.table("data.txt")
names(t) <- c('site', 'year', 'count', 'weight')
tm       <- glm(count ~ 0 + as.factor(site) + as.factor(year), data = t, 
                family = "quasipoisson")  # also works with family="poisson"
years    <- 2001:2003
plot(years, exp(c(0, tail(coef(tm), length(years)-1))), type = "l")

Der resultierende Jahresindex ist wie erwartet, dh 1-2-4in Jahren 2001-2003.

Aber wie ist es möglich, dass Poisson GLM nicht ganzzahlige Zahlen akzeptiert? Die Poisson-Verteilung war immer nur Ganzzahlen!


2
Können Sie klarstellen, was Sie genau wissen möchten? Wie geht der Anpassungsalgorithmus mit Nicht-Ganzzahlen um? Oder warum prüft R nicht, ob die Antwort eine ganze Zahl ist? Oder ob etwas im Ergebnis falsch ist, wenn Nicht-Ganzzahlen angegeben werden?
Momo

@Momo, ja, all diese Fragen sind interessant!
Neugierig

2
Bitte bearbeiten Sie Ihre Frage, um dies widerzuspiegeln. Auf diese Weise erhalten Sie mit größerer Wahrscheinlichkeit eine gute Antwort.
Momo

8
Nicht, dass dies wirklich wichtig ist, wie es auch für zutrifft family="poisson", aber beachten Sie, dass Ihr Beispiel kein Poisson-GLM ist, da Sie die quasipoissonFamilie verwenden, die ohnehin nur von der Beziehung zwischen dem Mittelwert und der Varianz abhängt In diesem Fall sollte es keine Überraschung sein, nicht ganzzahlige Zahlen zu verwenden.
Aaron - Wiedereinsetzung von Monica

1
Hier finden Sie einige Hinweise, warum dies sinnvoll sein könnte.
Dimitriy V. Masterov

Antworten:


17

Natürlich haben Sie Recht, dass die Poisson-Verteilung technisch nur für Ganzzahlen definiert ist. Die statistische Modellierung ist jedoch die Kunst guter Näherungen (" alle Modelle sind falsch "), und es gibt Zeiten, in denen es sinnvoll ist, nicht ganzzahlige Daten so zu behandeln, als wären sie [ungefähr] Poisson.

Wenn Sie beispielsweise zwei Beobachter aussenden, um dieselben Zählungsdaten aufzuzeichnen, kann es vorkommen, dass sich die beiden Beobachter nicht immer auf die Zählung einigen - einer könnte sagen, dass etwas dreimal passiert ist, während der andere sagte, dass es viermal passiert ist. Es ist dann schön, die Option zu haben, 3,5 zu verwenden, wenn Sie Ihre Poisson-Koeffizienten anpassen, anstatt zwischen 3 und 4 wählen zu müssen.

Computerisch gesehen könnte die Fakultät im Poisson die Arbeit mit Nicht-Ganzzahlen erschweren, aber es gibt eine kontinuierliche Verallgemeinerung der Fakultät. Darüber hinaus beinhaltet das Durchführen einer Maximum-Likelihood-Schätzung für das Poisson nicht einmal die Fakultätsfunktion, sobald Sie den Ausdruck vereinfacht haben .


15

yx

EYi=expβTxi
VarYi=EYi
β können durch Lösen der Bewertungsgleichungen für das Poisson-Modell erhalten werden: Natürlich impliziert Konsistenz nicht die Gültigkeit von Tests oder Konfidenzintervallen. Die Wahrscheinlichkeit wurde nicht angegeben.
inxi(yiexpβTxi)=0

Dies folgt aus der Methode der Momente, die wir in der Schule gelernt haben, und führt zu der von verallgemeinerten Schätzung von Gleichungen .

@ Aaron hat darauf hingewiesen, dass Sie tatsächlich eine Quasi-Poisson-Anpassung in Ihrem Code verwenden. Das heißt, die Varianz ist proportional zum Mittelwert

VarYi=ϕEYi

mit einem Dispersionsparameter , der aus den Daten geschätzt werden kann. Die Koeffizientenschätzungen sind gleich, ihre Standardfehler sind jedoch breiter. Dies ist ein flexiblerer und daher allgemeiner nützlicher Ansatz. (Beachten Sie auch, dass in solchen Situationen häufig Sandwich-Schätzer für die Varianz-Kovarianz-Matrix der Parameter verwendet werden, um robuste Standardfehler zu erhalten.)ϕ

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.