Bagaimana agar sesuai dengan distribusi diskrit untuk menghitung data?

17

Saya memiliki histogram data jumlah berikut. Dan saya ingin mencocokkan distribusi diskrit dengannya. Saya tidak yakin bagaimana saya harus melakukan ini.masukkan deskripsi gambar di sini

Haruskah saya pertama menempatkan superimpose distribusi diskrit, katakanlah distribusi Binomial Negatif, pada histogram sehingga saya akan mendapatkan parameter distribusi diskrit dan kemudian menjalankan tes Kolmogorov-Smirnov untuk memeriksa nilai-p?

Saya tidak yakin apakah metode ini benar atau tidak.

Apakah ada metode umum untuk mengatasi masalah seperti ini?

Ini adalah tabel frekuensi dari data hitungan. Dalam masalah saya, saya hanya fokus pada jumlah bukan nol.

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

UPDATE: Saya ingin bertanya: Saya menggunakan fungsi fitdistr di R untuk mendapatkan parameter untuk pemasangan data.

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

Saya kemudian memetakan fungsi massa probabilitas distribusi Poisson di atas histogram. masukkan deskripsi gambar di sini

Namun, sepertinya distribusi Poisson gagal memodelkan data jumlah. Apakah ada sesuatu yang saya bisa lakukan?

pengguna1769197
sumber
3
Metode umum adalah menggunakan kemungkinan maksimum agar sesuai dengan distribusi kandidat. Apa yang Anda maksud dengan menimpangkan distribusi untuk mendapatkan parameter tidak jelas, tetapi jika Anda menebak nilai parameter sampai Anda mendapatkan kecocokan yang baik, itu adalah metode yang buruk. Kolmogorov-Smirnov tidak berguna di sini. Anda memerlukan perangkat lunak yang layak yang memberi Anda hasil yang dapat disimpulkan, sehingga Anda perlu menunjukkan perangkat lunak pilihan Anda sehingga orang yang menggunakannya dapat mencoba membantu Anda. Histogram Anda tidak jelas, tetapi jika ada kesenjangan maka tidak ada distribusi yang cocok.
Nick Cox
3
Meskipun menggunakan uji KS dengan cara itu adalah metode yang buruk (dan dalam kasus apa pun uji KS bukan untuk distribusi diskrit), akan mungkin untuk memperkirakan parameter dengan meminimalkan statistik KS atas semua nilai parameter yang mungkin; tetapi jika Anda menggunakan cara itu (mengoptimalkan beberapa kebaikan), minimum chi-square akan menjadi pendekatan yang lebih khas. Seperti Nick Cox menyarankan ML akan menjadi hal yang jelas untuk dilakukan, hampir pasti lebih efisien, lebih mudah untuk mendapatkan kesalahan standar, dan lebih mudah diterima oleh orang lain. (Ada kemungkinan lain, seperti metode momen, tetapi ML adalah hal utama.)
Glen_b -Reinstate Monica
Saya menggunakan R. Ketika Anda mengatakan memperkirakan MLE, apakah ada algoritma yang akan Anda rekomendasikan untuk pekerjaan itu? Dan setelah menemukan ML, apa yang harus saya lakukan selanjutnya?
user1769197
Saya akan mulai di sini ?MASS::fitdistr, karena sudah dalam distribusi R Anda (lihat contoh terakhir di bagian bawah; lihat rnegbin untuk informasi lebih lanjut tentang parameterisasi Binomial Negatif). .... " Dan setelah menemukan ML, apa yang harus saya lakukan selanjutnya? " - yah pada saat itu Anda memiliki perkiraan parameter dan kesalahan standar. Di luar itu, apa yang ingin Anda capai? - Saya tidak bisa menebak.
Glen_b -Reinstate Monica
Terpikir oleh saya bahwa Anda mungkin mencoba untuk bertanya 'bagaimana cara menilai kecocokan model saya?'. Jika demikian, dapatkah Anda memperbarui pertanyaan Anda untuk mencerminkan hal itu?
Glen_b -Reinstate Monica

Jawaban:

17

Metode distribusi diskrit pas

Ada tiga metode utama * yang digunakan agar sesuai (memperkirakan parameter) distribusi diskrit.

1) Kemungkinan Maksimum

Ini menemukan nilai parameter yang memberikan peluang terbaik untuk memasok sampel Anda (dengan asumsi lain, seperti independensi, parameter konstan, dll)

2) Metode momen

Ini menemukan nilai parameter yang membuat beberapa momen populasi pertama cocok dengan momen sampel Anda. Ini seringkali cukup mudah dilakukan, dan dalam banyak kasus menghasilkan penaksir yang cukup masuk akal. Ini juga terkadang digunakan untuk memasok nilai awal ke rutinitas ML.

3) Minimum chi-square

Ini meminimalkan statistik kesesuaian chi-square atas distribusi diskrit, meskipun kadang-kadang dengan set data yang lebih besar, kategori akhir mungkin digabungkan untuk kenyamanan. Ini sering bekerja dengan cukup baik, dan bahkan bisa dibilang memiliki beberapa keunggulan dibandingkan ML dalam situasi tertentu, tetapi umumnya harus diulangi dengan konvergensi, dalam hal ini kebanyakan orang cenderung memilih ML.

Dua metode pertama juga digunakan untuk distribusi kontinu; yang ketiga biasanya tidak digunakan dalam kasus itu.

Ini tidak berarti terdiri dari daftar lengkap, dan akan sangat mungkin untuk memperkirakan parameter dengan meminimalkan KS-statistik misalnya - dan bahkan (jika Anda menyesuaikan untuk kelonggaran), untuk mendapatkan wilayah konsonan gabungan dari itu, jika Anda sangat cenderung. Karena Anda bekerja di R, estimasi ML cukup mudah dicapai untuk binomial negatif. Jika sampel Anda ada x, semudah 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)

Itu adalah estimasi parameter dan kesalahan standar (asimptotik) mereka.

Dalam kasus distribusi Poisson, MLE dan MoM sama-sama memperkirakan parameter Poisson pada rata-rata sampel.

Jika Anda ingin melihat contoh, Anda harus memposting beberapa penghitungan yang sebenarnya. Perhatikan bahwa histogram Anda telah dilakukan dengan nampan yang dipilih sehingga kategori 0 dan 1 digabungkan dan kami tidak memiliki jumlah mentah.

Sejauh yang bisa saya tebak, data Anda kira-kira sebagai berikut:

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

Tetapi bilangan besar akan tidak pasti (itu sangat bergantung pada seberapa akurat penghitungan rendah diwakili oleh penghitungan piksel ketinggian bar mereka) dan bisa beberapa kelipatan dari angka-angka itu, seperti dua kali angka-angka itu (penghitungan mentah mempengaruhi kesalahan standar, jadi itu penting apakah mereka tentang nilai-nilai itu atau dua kali lebih besar)

Penggabungan dua kelompok pertama membuatnya sedikit canggung (mungkin dilakukan, tetapi tidak begitu mudah jika Anda menggabungkan beberapa kategori. Banyak informasi ada dalam dua kelompok pertama sehingga sebaiknya tidak membiarkan histogram standar menggumpalkannya) ).


* Metode lain dari distribusi diskrit pas mungkin saja (orang mungkin cocok dengan kuantil atau meminimalkan statistik kecocokan lainnya misalnya). Yang saya sebutkan tampaknya paling umum.

Glen_b -Reinstate Monica
sumber
+1, info bagus. Hanya karena penasaran, mengapa Anda sering menggunakan 1), alih-alih penomoran markup yang didukung CV (yaitu, 1.- yang mengarah ke indentasi)?
gung - Reinstate Monica
1
@ Gung Kebanyakan, saya tidak memikirkannya - saya lebih suka daftar saya untuk melihat cara saya mengetiknya; tetapi ketika saya berpikir tentang hal itu saya menemukan pengeditan markdown dari angka yang saya ketik dengan apa yang menurut mereka harus sangat mengganggu (jika saya mengetik "36.", saya benar - benar tidak bermaksud "1.") ... jadi ketika Terpikir oleh saya untuk menggunakan "1." daripada "1)", saya sering mengetik "1 \". secara eksplisit untuk menghentikannya mengenalinya dan melakukan hal-hal yang tidak saya maksudkan. Saya sangat terbiasa dengan perilaku ini sejak 5 tahun reddit sehingga saya bahkan tidak memikirkannya - saya akan secara otomatis mencampuri hal itu dengan paksa.
Glen_b -Reinstate Monica
1
@ Gung Jika indentasi itu jauh lebih kecil, saya mungkin akan cenderung tahan dengan renumbering-hazard dan menggunakannya. Seperti berdiri, saya biasanya menganggapnya mengganggu ketika saya melihatnya. Tetapi dalam kasus khusus ini saya ingin membuat mereka lebih mirip subpos, jadi saya mungkin akan menghindarinya bahkan jika saya tidak tertunda oleh perilaku itu. (Di sisi lain, pada kesempatan orang lain memutuskan untuk mengedit daftar saya untuk membuatnya melakukan indentasi, saya biasanya meninggalkan mereka untuk menyenangkan diri mereka sendiri. Jika mereka ingin membuatnya terlihat dengan cara tertentu, mereka bisa selama itu tidak akan mengubah artinya.)
Glen_b -Reinstate Monica
Saya akan mencoba menahan diri ;-).
gung - Reinstate Monica
2

Dalam edit, Anda memberikan beberapa data, dan menambahkan pertanyaan baru:

"Ini adalah tabel frekuensi dari data jumlah. Dalam masalah saya, saya hanya fokus pada jumlah yang bukan nol.

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

Bisakah seseorang memberi saya contoh tentang bagaimana Anda melakukan uji kelayakan chi-squared di sini? "

Ini mengarah ke komentar lebih lanjut:

  1. Memiliki nol tetapi ingin mengabaikannya bisa masuk akal, tetapi secara umum orang-orang ingin tahu alasan mengapa.

  2. Jika Anda memilih untuk mengabaikan nol, Anda menempatkan diri Anda di wilayah yang sulit, karena Anda tidak bisa hanya menjalankan rutinitas untuk mis. Poisson atau binomial negatif jika Anda meninggalkan nol. Ya, Anda bisa, tetapi jawabannya salah. Anda memerlukan fungsi atau perintah tujuan khusus untuk distribusi seperti Poisson nol terpotong atau binomial negatif terpotong nol. Itu hal-hal yang menantang dan perlu bacaan khusus untuk menjelaskan apa yang Anda lakukan.

  3. Bertanya bagaimana melakukan tes chi-square menunjukkan kepada saya bahwa Anda belum benar-benar mengerti apa yang saya katakan dengan singkat dan @Glen_b mengatakan lebih detail (dan, menurut saya, dengan sangat jelas). Membagi menjadi dua:

    • Tidak boleh ada uji chi-square tanpa frekuensi yang diharapkan dan tidak ada frekuensi yang diharapkan tanpa estimasi parameter. Mungkin Anda paling terbiasa dengan rutinitas uji chi-square di mana independensi baris dan kolom dalam tabel dua arah diuji. Meskipun itu adalah tes chi-square yang paling banyak ditemui dalam kursus pengantar, sebenarnya sangat tidak biasa di antara tes chi-square secara umum karena perangkat lunak yang biasa berlaku melakukan estimasi parameter untuk Anda dan dengan demikian mendapatkan frekuensi yang diharapkan. Di luar itu, di sebagian besar masalah yang lebih rumit, seperti milik Anda, Anda harus mendapatkan perkiraan parameter terlebih dahulu.

    • Tes chi-square tidak salah, tetapi jika Anda memperkirakan parameter dengan kemungkinan maksimum itu tidak relevan karena rutinitas pemasangan memberi Anda perkiraan dan kesalahan standar dan memungkinkan pengujian di belakangnya. @ Glen_b sudah memberikan contoh dalam jawabannya.

Masalah sampingannya adalah bahwa akan lebih jelas untuk mengubah histogram Anda untuk menghormati diskresi variabel dan menunjukkan probabilitas, bukan kepadatan. Kesenjangan yang tampak hanyalah artefak dari pilihan bin default yang tidak menghormati diskresi variabel.

UPDATE: Pertanyaan tambahan tentang uji chi-square sekarang telah dihapus. Untuk saat ini saya membiarkan nomor 3 di atas berdiri, kalau-kalau ada orang lain mengikuti jalan yang sama menginginkan tes chi-square.

Nick Cox
sumber
Saya harus mengabaikan angka nol, karena saya mencoba memodelkan jumlah aktif. Hitungan = 0 disebut sebagai jumlah tidak aktif.
user1769197
Itu pilihan yang substantif. Perhatikan bahwa dalam banyak bidang ada yang disebut dua model bagian, di mana Anda memodelkan (dalam istilah Anda) aktif versus tidak aktif dan kemudian seberapa aktif.
Nick Cox
Saya mencoba untuk men-tweak histogram dengan melakukan "plot (table (abc), type =" h ")". Tapi, saya tidak yakin bagaimana saya bisa menampilkannya dengan probabilitas
user1769197
Saya tidak menggunakan R, tetapi Anda bisa mendapatkan saran tentang itu. Anda mungkin perlu bertanya secara terpisah.
Nick Cox