与えられたサンプルがポアソン分布から取得された場合、どのようにテストできますか?


41

正規性テストは知っていますが、「ポアソン性」をテストするにはどうすればよいですか?

〜1000個の非負整数のサンプルがありますが、これらはポアソン分布から取得されたものと思われ、それをテストしたいと思います。

回答:


18

まず私のアドバイスは、データと同じようにポアソン分布を試してはならないということです。ポアソン分布が特定のデータセットまたは現象に適合する必要がある理由について、まず理論を作成する必要があることをお勧めします。

これを確立したら、次の問題は、分布が均一かどうかです。これは、データのすべての部分が同じポアソン分布で処理されるか、時間や空間などの何らかの側面に基づいてこれに変化があるかを意味します。これらの側面を理解したら、次の3つのテストを試してください。

  1. カイ二乗変数を使用した尤度比検定
  2. 条件付きカイ二乗統計の使用。ポアソン分散テストまたは分散テストとも呼ばれます
  3. ポアソン変数の変換を安定化させる分散に基づく、ネイマン・スコット統計の使用

これらを検索すると、ネット上で簡単に見つけることができます。


3
「分布が均一であるかどうか...これらの側面を確信したら」これを決定する方法を少しコメントしていただけますか?
意味する意味

13

役に立つかもしれないRコマンドのシーケンスを次に示します。間違いを見つけたら、気軽にコメントしたり編集したりしてください。

set.seed(1)
x.poi<-rpois(n=200,lambda=2.5) # a vector of random variables from the Poisson distr.

hist(x.poi,main="Poisson distribution")

lambda.est <- mean(x.poi) ## estimate of parameter lambda
(tab.os<-table(x.poi)) ## table with empirical frequencies


freq.os<-vector()
for(i in 1: length(tab.os)) freq.os[i]<-tab.os[[i]]  ## vector of emprical frequencies

freq.ex<-(dpois(0:max(x.poi),lambda=lambda.est)*200) ## vector of fitted (expected) frequencies

acc <- mean(abs(freq.os-trunc(freq.ex))) ## absolute goodness of fit index acc
acc/mean(freq.os)*100 ## relative (percent) goodness of fit index

h <- hist(x.poi ,breaks=length(tab.os))
xhist <- c(min(h$breaks),h$breaks)
yhist <- c(0,h$density,0)
xfit <- min(x.poi):max(x.poi)
yfit <- dpois(xfit,lambda=lambda.est)
plot(xhist,yhist,type="s",ylim=c(0,max(yhist,yfit)), main="Poison density and histogram")
lines(xfit,yfit, col="red")

#Perform the chi-square goodness of fit test 
#In case of count data we can use goodfit() included in vcd package
library(vcd) ## loading vcd package
gf <- goodfit(x.poi,type= "poisson",method= "MinChisq")
summary(gf)
plot(gf,main="Count data vs Poisson distribution")

3
次の行:freq.ex <-(dpois(0:max(x.poi)、lambda = lambda.est)* 200)は、freq.exの長さがfreqと一致しないため、一部の実世界データでエラーを生成します。この行のobs acc <-mean(abs(freq.os-trunc(freq.ex)))。この行をfreq.ex <-(dpois(seq(0、max(x.poi)))[seq(0:max(x.poi))%in%x.poi]、lambda = lambda.est)に適合させました* 200)しかし、goodfitは警告を生成するため、まだ何かが正しくありません。
ラッセルピアス

あなたのコードを使用すると、121という適合指数が得られます。しかし、相対的なものではありませんか?0から100の間である必要がありますよね?
MERose


5

ポアソンは分散を1にする必要があるため、分散(平均に対する分散の比)を検定統計量として使用できます。これをモデルテストとして使用する方法へのリンクです。


+1ありがとう。多くの場合、私はいくつかの「weired」の結果を得る、例えば、正規分布は、(のみ通常とポアソンは全く似ていないので、ルックスで)ラムダが比較的小さいポアソン1、高いp値を取得します
デビッド・B

6
404お探しのページが見つかりませんでした!!
ロドリゴ

5

ポアソン分布の場合、平均は分散に等しくなります。サンプルの平均がサンプルの分散と大きく異なる場合、ポアソンデータがない可能性があります。ここで言及されている分散テストは、その概念の形式化です。

一般的にそうであるように、分散が平均よりもはるかに大きい場合は、次に負の二項分布を試してください。


5
平均が分散と同じ場合、データはポアソンであると結論付けることができますか?ほとんどない!
PeterR

本当です。必要だが十分ではない。
ジョンD.クック

2

観測された周波数と期待された周波数を並べて描画する単一の図を描画できます。分布が大きく異なり、分散平均比も1より大きい場合、負の二項分布が適切な候補です。からの頻度分布のセクションをお読みくださいThe R Book。非常によく似た問題を扱います。


1

主なポイントは、sidmaestroが提起するものだと思います...実験のセットアップまたはデータ生成メカニズムは、データがポアソン分布から生じる可能性があるという前提をサポートしていますか?

これらのテストは一般的にあまり有用ではないため、私は分布の仮定のテストの大ファンではありません。私にとってより有用と思われるのは、通常推論のために、モデルからの逸脱に対して柔軟で合理的に堅牢な分布またはモデルの仮定を行うことです。私の経験では、mean = varianceを見るのはそれほど一般的ではないため、多くの場合、負の二項モデルがより適切であるように思われ、特別な場合としてポアソンが含まれます。

ディストリビューションテストに行く上で重要なもう1つのポイントは、それがやりたいことである場合、観測されたディストリビューションが他のディストリビューションの混合になるような階層が含まれていないことを確認することです。個々の層固有の分布はポアソンに見えるかもしれませんが、観測された混合はそうではないかもしれません。回帰からの類似の状況は、Y | Xの条件付き分布が正規分布であり、実際にはY自体の分布ではないことを想定しています


回帰に関する最後のポイントは、Xがランダムな場合にのみ当てはまります。Xが固定されている場合、Yも正常になります。番号?

はい、これは事実ですが、一般的な回帰問題(anovaや設計上の問題とは対照的に)については、Xは実際には修正されず、基になるプロセスからの観測です。ただし、ポアソンの場合、ポアソンの混合は必ずしもポアソンではないので、ポイントは保持されます。
アビジット

0

これをテストするさらに別の方法は、変位値変位値プロットを使用することです。Rにはqqplotがあります。これは、平均とsdが類似した正規分布に対して値を直接プロットします

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.