離散分布を適合させてデータをカウントする方法は?


17

次のカウントデータのヒストグラムがあります。そして、離散分布をそれに当てはめたいと思います。これについてどうすればいいかわかりません。ここに画像の説明を入力してください

最初に離散分布、たとえば負の二項分布をヒストグラムに重ね合わせて、離散分布のパラメーターを取得し、Kolmogorov–Smirnov検定を実行してp値を確認する必要がありますか?

この方法が正しいかどうかはわかりません。

このような問題に取り組む一般的な方法はありますか?

これは、カウントデータの度数分布表です。私の問題では、ゼロ以外のカウントのみに焦点を合わせています。

  Counts:     1    2    3    4    5    6    7    9   10 
 Frequency: 3875 2454  921  192   37   11    1    1    2 

更新:質問したい:Rのfitdistr関数を使用して、データを近似するためのパラメーターを取得しました。

fitdistr(abc[abc != 0], "Poisson")
     lambda  
  1.68147852 
 (0.01497921)

次に、ヒストグラムの上にポアソン分布の確率質量関数をプロットします。 ここに画像の説明を入力してください

ただし、ポアソン分布はカウントデータのモデル化に失敗したようです。何か私にできることはありますか?


3
一般的な方法は、最尤法を使用して候補分布に適合させることです。パラメーターを取得するために分布を重ね合わせることの意味は明確ではありませんが、適切な適合が得られるまでパラメーター値を推測することを意味する場合、それはお粗末な方法です。Kolmogorov-Smirnovはここでは役に立ちません。推論結果を提供するまともなソフトウェアが必要です。そのため、選択したソフトウェアを指定して、それを使用する人々があなたを助けようとする必要があります。ヒストグラムは明確ではありませんが、ギャップがある場合、うまく分布する分布はありません。
ニックコックス

3
この方法でKS 検定を使用するのはお粗末な方法ですが(いずれの場合もKS検定は離散分布用ではありません)、可能なすべてのパラメーター値にわたってKS統計を最小化することでパラメーターを推定することができます。しかし、そのような方法で(ある程度の適合度を最適化する)場合、最小カイ2乗がより一般的なアプローチになります。Nick Coxが示唆しているように、MLを行うことは明らかであり、ほぼ間違いなくより効率的で、標準エラーを簡単に取得でき、他の人がより容易に受け入れます。(モーメント法など、他の可能性もありますが、MLが主なものです。)
Glen_b -Reinstate Monica

私はRを使用しています。MLEの推定と言うとき、仕事に推奨するアルゴリズムはありますか?MLを見つけたら、次に何をすればよいですか?
-user1769197

?MASS::fitdistr既にR分布にあるので、ここから始めます(最後の例を参照してください。負の二項のパラメーター化の詳細については、rnegbinを参照してください)。....「そしてMLを見つけたら、次に何をすべきか?」-その時点で、パラメーターの推定値と標準誤差があります。それを超えて、何を達成したいですか?-推測できません。
Glen_b -Reinstateモニカ

「モデルの適合性をどのように評価すればよいですか?」その場合、質問を更新してそれを反映できますか?
Glen_b-モニカを復活

回答:


17

離散分布を近似する方法

離散分布の近似(パラメーターの推定)に使用される3つの主な方法があります。

1)最尤法

これにより、サンプルを提供する可能性が最も高いパラメーター値が検出されます(独立性、定数パラメーターなど、他の仮定が与えられた場合)

2)モーメントの方法

これにより、最初のいくつかの母集団モーメントがサンプルモーメントと一致するパラメーター値が見つかります。多くの場合、それは非常に簡単であり、多くの場合、かなり合理的な推定量が得られます。また、MLルーチンに開始値を提供するために使用されることもあります。

3)最小カイ二乗

これにより、離散分布でのカイ二乗適合度統計量が最小になりますが、データセットが大きい場合は、便宜上、エンドカテゴリを組み合わせることができます。多くの場合、かなりうまく機能し、特定の状況ではおそらくMLに比べていくつかの利点がありますが、通常は収束まで繰り返す必要があります。その場合、ほとんどの人はMLを好む傾向があります。

最初の2つの方法は、連続分布にも使用されます。その場合、通常3番目は使用されません。

共同取得するには、(あなたが離散のために調整した場合)でも、および-これらは、決して完全なリストを含み、例えばKS-統計量を最小限に抑えることによってパラメータを推定することは非常に可能である協和領域にあなたがいた場合、それからとても傾いています。Rで作業しているので、負の二項式のML推定は非常に簡単に実現できます。サンプルがにある場合、次xのように簡単library(MASS);fitdistr (x,"negative binomial")です。

> library(MASS) 
> x <- rnegbin(100,7,3)
> fitdistr (x,"negative binomial")
     size         mu    
  3.6200839   6.3701156 
 (0.8033929) (0.4192836)

これらは、パラメータの推定値と(漸近的な)標準誤差です。

ポアソン分布の場合、MLEとMoMはどちらもサンプル平均でポアソンパラメーターを推定します。

例をご覧になりたい場合は、実際のカウントを投稿してください。ヒストグラムは、0と1のカテゴリが結合され、rawカウントがないように選択されたビンで行われていることに注意してください。

私が推測できる限りでは、あなたのデータはおよそ次のとおりです。

    Count:  0&1   2   3   4   5   6  >6    
Frequency:  311 197  74  15   3   1   0

しかし、大きな数値は不確かであり(ローカウントがバーの高さのピクセルカウントによってどれだけ正確に表されるかに大きく依存します)、それらの数値の2倍など、それらの数値の倍数になる可能性があります(rawカウントは影響します)標準エラーなので、それらがそれらの値に関するものであるか、2倍の大きさであるかが重要です)

最初の2つのグループを組み合わせると、少し厄介になります(実行することは可能ですが、いくつかのカテゴリを組み合わせると簡単ではありません。最初の2つのグループには多くの情報があるため、デフォルトのヒストグラムをまとめないでください)。


*離散分布を近似する他の方法ももちろん可能です(たとえば、変位値と一致するか、他の適合度統計を最小化する場合があります)。私が言及したものは最も一般的であるように見えます。


+1、いい情報。好奇心から、なぜ1)CVがサポートするマークアップ番号の代わりにを使用するように見えるのですか(つまり、1.インデントにつながる)?
グン-モニカを回復

1
@gungたいてい、私はそれについて考えません-私は自分のリストが私がそれらをタイプする方法を見るのが好きです。しかし、考えてみると、入力した数値のマークダウンによる編集が、非常に迷惑なはずだと思うものに気づきます(「36.」と入力した場合、「1」を意味しませんでし)。私は「1」を使用することになります。「1)」ではなく、「1 \」と入力することがよくあります。明示的に認識して、意図しないことを実行することを停止します。私は5年間のredditからこの振る舞いに非常に順応したので、私はそれについて考えることさえしませんでした。
Glen_b -Reinstateモニカ

1
@gungインデントがずっと小さかった場合、おそらく番号変更のハザードに我慢して使用したいと思うでしょう。現状では、見たときに気が散るのが普通です。しかし、この特定のケースでは、それらを小見出しのように見せたいと思っていたので、振る舞いに先送りされていなくても、おそらくそれを避けていただろう。(一方で、他の人がリストを編集してインデントを作成することを決めた場合、私は一般的に自分自身を喜ばせるためにリストを残します。 '意味を変えないでください。)
グレン_b-モニカを復活

私は自分自身を抑制しようとします;-)。
GUNG -復活モニカ

2

編集で、いくつかのデータを指定し、新しい質問を追加しました:

「これは、カウントデータの頻度表です。私の問題では、ゼロ以外のカウントのみに注目しています。

   Counts:     1    2    3    4    5    6    7    9   10 
Frequency:  3875 2454  921  192   37   11    1    1    2 

カイ二乗適合度検定をここで実行する方法の例を教えていただけますか?」

これにより、さらにコメントが追加されます。

  1. ゼロを持っているが、それらを無視したいのは理にかなっていますが、一般的に統計や主題の人々はその理由の正当な理由を見たいと思うでしょう。

  2. ゼロを無視することを選択した場合、ゼロを除外するとポアソンや負の二項式のルーチンを起動することはできないため、困難な領域に身を置くことになります。できますが、答えは間違っています。ゼロ切り捨てポアソンやゼロ切り捨て負の二項分布などの分布には、特別な目的の関数またはコマンドが必要です。それはやりがいのあることであり、あなたが何をしているかを明確にするために専用の読書が必要です。

  3. カイ二乗検定の実行方法を尋ねると、私が非常に簡潔に言ったことが本当に理解されておらず、@ Glen_bがより詳細に(そして、私の心では、非常に明確に)言ったことがわかります。それを2つに分割します。

    • 予想される頻度なしでカイ二乗検定はできません。また、パラメーター推定なしで予想された頻度はありません。双方向テーブルの行と列の独立性がテストされるカイ二乗検定ルーチンに最も精通している可能性があります。これは入門コースで最もよく使用されるカイ2乗検定ですが、実際の通常のソフトウェアがパラメーター推定を実行し、それによって予想される頻度を取得するという点で、一般にカイ2乗検定では非常に珍しいことです。それを超えて、あなたのような最も複雑な問題では、最初にパラメータ推定値を取得する必要があります。

    • カイ2乗検定は間違っていませんが、最尤法でパラメーターを推定する場合、フィッティングルーチンが推定値と標準誤差を提供し、その後の検定を許可するため、関係ありません。@Glen_bは既に彼の答えに例を挙げています。

副次的な問題は、ヒストグラムを微調整して変数の離散性を尊重し、密度ではなく確率を示す方が明確になることです。明らかなギャップは、変数の離散性を考慮しないデフォルトのビン選択の成果物です。

更新:カイ2乗検定に関する補足質問は削除されました。今のところ、他の誰かがカイ二乗検定を望んでいるのと同じ道をたどる場合に備えて、上記の#3を立てています。


アクティブなカウントをモデル化しようとしているため、ゼロを無視する必要があります。カウント= 0は、非アクティブカウントと呼ばれます。
user1769197

それは実質的な選択です。多くのフィールドには、2つの部分モデルと呼ばれるものがあります。このモデルでは、(用語で)アクティブと非アクティブをモデル化し、次にアクティブにする方法をモデル化します。
ニックコックス

「plot(table(abc)、type = "h")」を実行して、ヒストグラムを調整しようとしました。しかし、どうすれば確率を示すことができるのかわかりません
-user1769197

私はRを使用しませんが、それについてアドバイスを得ることができます。個別に尋ねる必要がある場合があります。
ニックコックス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.