Apakah bootstrap cocok untuk data kontinu ini?


11

Saya seorang pemula lengkap :)

Saya sedang melakukan penelitian dengan ukuran sampel 10.000 dari populasi sekitar 745.000. Setiap sampel mewakili "persentase kesamaan". Sebagian besar sampel adalah sekitar 97% -98% tetapi beberapa berada di antara 60% dan 90%, yaitu, distribusi sangat condong negatif. Sekitar 0,6% dari hasilnya adalah 0%, tetapi ini akan diperlakukan secara terpisah dari sampel.

Rata-rata semua 10.000 sampel adalah 97,7%, dan hanya di Excel, StdDev adalah 3,20. Saya mengerti bahwa StdDev tidak benar-benar berlaku di sini karena hasilnya tidak terdistribusi normal (dan karena +3.20 akan menempatkan Anda di atas 100%!).

Pertanyaan saya adalah:

  1. Apakah bootstrap (konsep baru bagi saya) sesuai?
  2. Apakah saya bootstrap dengan benar :)
  3. Berapa ukuran sampel yang memadai?

Apa yang saya lakukan adalah resampling (dengan penggantian) 10.000 hasil saya dan menghitung rata-rata baru. Saya melakukan ini beberapa ribu kali dan menyimpan setiap mean dalam array. Saya kemudian menghitung "mean of the means" dan ini adalah hasil statistik saya. Untuk menghitung 99% CI, saya memilih nilai 0,5% dan 99,5%, dan ini menghasilkan kisaran yang sangat ketat: 97,4% - 98,0%. Apakah ini hasil yang valid atau saya melakukan sesuatu yang salah?

Adapun ukuran sampel, saya hanya mengambil sampel sekitar 1,3% dari populasi - saya tidak tahu apakah ini "cukup". Bagaimana saya tahu jika sampel saya mewakili populasi? Idealnya, saya ingin menjadi 99% yakin dengan rata-rata yang +/- 0,50% poin persentase (yaitu 97,2% - 98,2%).

Terima kasih sebelumnya atas sarannya!

Jawaban:


19

Deviasi standar dapat diterapkan di sini seperti di tempat lain: deviasi ini memberikan informasi berguna tentang penyebaran data. Secara khusus, sd dibagi dengan akar kuadrat dari ukuran sampel adalah satu kesalahan standar: ia memperkirakan dispersi distribusi sampling dari rata-rata. Mari kita hitung:

3.2%/10000=0.032%=0.00032.

Itu kecil - jauh lebih kecil dari presisi Anda cari.±0.50%

Meskipun data tidak terdistribusi secara normal, mean sampel sangat dekat dengan terdistribusi secara normal karena ukuran sampel sangat besar. Di sini, misalnya, adalah histogram sampel dengan karakteristik yang sama seperti milik Anda dan, di sebelah kanannya, histogram rata-rata seribu sampel tambahan dari populasi yang sama.

Gambar 1

Itu terlihat sangat dekat dengan Normal, bukan?

Jadi, meskipun tampaknya Anda bootstrap dengan benar, bootstrap tidak diperlukan: interval kepercayaan simetris untuk mean diperoleh, seperti biasa, dengan mengalikan kesalahan standar dengan persentil yang sesuai dari distribusi Normal standar (untuk kecerdasan, ) dan memindahkan jarak itu ke kedua sisi rata-rata. Dalam kasus Anda, , jadi interval kepercayaan adalah100α%Z1α/200Z1α/200=2.575899%

(0.9772.5758(0.032)/10000, 0.977+2.5758(0.032)/10000)=(97.62%,97.78%).

Ukuran sampel yang cukup dapat ditemukan dengan membalik hubungan ini untuk menyelesaikan ukuran sampel. Di sini ia memberi tahu kami bahwa Anda membutuhkan ukuran sampel

(3.2%/(0.5%/Z1α/200))2272.

Ini cukup kecil sehingga kita mungkin ingin memeriksa kembali kesimpulan bahwa distribusi sampling rata-rata adalah Normal. Saya menarik sampel dari populasi saya dan bootstrap rata-rata (untuk iterasi):99992729999

Gambar 2

Benar saja, kelihatannya Normal. Bahkan, interval kepercayaan bootstrap dari hampir identik dengan CI Normal-teori .( 97,19 % , 98,24 % )(97.16%,98.21%)(97.19%,98.24%)

Sebagai contoh ini menunjukkan, para ukuran sampel mutlak menentukan akurasi perkiraan daripada proporsi ukuran populasi. (Contoh ekstrem tapi intuitif adalah setetes air laut dapat memberikan perkiraan akurat konsentrasi garam di lautan, meskipun setetes itu adalah sebagian kecil dari semua air laut.) Untuk tujuan Anda yang disebutkan, dapatkan sampel dari (yang membutuhkan lebih dari kali lebih banyak bekerja sebagai sampel dari ) adalah berlebihan.36 2721000036272


Rkode untuk melakukan analisis ini dan plot grafik berikut ini. Sampel dari populasi yang memiliki distribusi Beta dengan rata-rata dan SD .0,0320.9770.032

set.seed(17)
#
# Study a sample of 10,000.
#
Sample <- rbeta(10^4, 20.4626, 0.4817)
hist(Sample)
hist(replicate(10^3, mean(rbeta(10^4, 20.4626, 0.4817))),xlab="%",main="1000 Sample Means")
#
# Analyze a sample designed to achieve a CI of width 1%.
#
(n.sample <- ceiling((0.032 / (0.005 / qnorm(1-0.005)))^2))
Sample <- rbeta(n.sample, 20.4626, 0.4817)
cat(round(mean(Sample), 3), round(sd(Sample), 3)) # Sample statistics
se.mean <- sd(Sample) / sqrt(length(Sample))      # Standard error of the mean
cat("CL: ", round(mean(Sample) + qnorm(0.005)*c(1,-1)*se.mean, 5)) # Normal CI
#
# Compare the bootstrapped CI of this sample.
#
Bootstrapped.means <- replicate(9999, mean(sample(Sample, length(Sample), replace=TRUE)))
hist(Bootstrapped.means)
cat("Bootstrap CL:", round(quantile(Bootstrapped.means, c(0.005, 1-0.005)), 5))

2
Saya tahu posting ini cukup lama tetapi ini sangat membantu. Terima kasih telah berbagi pengetahuan Anda.
RDizzl3
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.