Interval kepercayaan untuk median


40

Saya harus menemukan 95% CI pada median dan persentil lainnya. Saya tidak tahu bagaimana mendekati ini. Saya terutama menggunakan R sebagai alat pemrograman.

Jawaban:


31

Berikut ini adalah ilustrasi pada dataset R klasik:

> x       = faithful$waiting
> bootmed = apply(matrix(sample(x, rep=TRUE, 10^4*length(x)), nrow=10^4), 1, median)
> quantile(bootmed, c(.025, 0.975))
2.5% 97.5% 
 73.5    77 

yang memberikan interval kepercayaan (73,5, 77) pada median.

( Catatan: Versi yang diperbaiki, terima kasih kepada John . Saya menggunakan di awal, yang menyebabkan kebingungan!)103nrow


7
Tampaknya sempit bagi saya. Menggunakan fungsi dari library(boot)muncul untuk mengonfirmasi ini:> boot.ci (boot (x, function (x, i) median (x [i]), R = 1000)) Interval: Level Normal Dasar 95% (74.42, 78.22) (75.00 , 78.49) Level Persentil BCa 95% (73.51, 77.00) (73.00, 77.00)
onestop

2
Sama-sama Xi'an ... Sebagai tambahan, saya selalu lebih suka untuk menetapkan nilai N asli dalam matriks karena itu adalah konstan di berbagai ukuran bootstrap yang mungkin saya buat. Jadi, saya biasanya akan mengatakan ncol = length (x). Saya menemukan ada sedikit kemungkinan kesalahan seperti itu.
John

6
Ini hanya cara yang tidak efisien untuk menghitung kuantil binomial seperti pada jawaban onestop .
whuber

30

Pendekatan lain didasarkan pada kuantil dari distribusi binomial.
misalnya:

> x=faithful$waiting
> sort(x)[qbinom(c(.025,.975), length(x), 0.5)]
[1] 73 77

4
Saya suka kesederhanaan yang satu ini ... Hasilnya dekat dengan metode bootstrap.
Dominic Comtois

1
Ini jelas jauh lebih efisien daripada bootstrap untuk case yang terus-menerus, tetapi satu kelemahannya adalah ia tidak memperhitungkan peringkat yang terikat. Apakah Anda mengetahui solusi untuk ini?
ali_m

15

Lihatlah bootstrap resampling. Cari bantuan R untuk fungsi boot. Bergantung pada data Anda dengan resampling, Anda dapat memperkirakan interval kepercayaan untuk apa saja.


Setuju. Ini adalah pendekatan terbaik. Kurang dimanfaatkan dalam ilmu biomedis, menurut pendapat saya.
pmgjones

10
Pertimbangkan untuk melihat bootstrap yang diperhalus untuk memperkirakan jumlah populasi karena boostrap konvensional tampaknya memiliki masalah dalam hal itu - referensi dapat ditemukan dalam pdf ini . Jika Anda hanya tertarik pada Median teoretis, estimator Hodges-Lehman dapat digunakan - seperti yang disediakan oleh, misalnya, wilcox.test(..., conf.int=TRUE)fungsi R.
caracal

4

Dan ada pendekatan lain: Salah satunya didasarkan pada uji Jumlah Wilcoxon Rank diterapkan untuk satu sampel dengan koreksi kontinuitas. Dalam R ini dapat diberikan sebagai:

wilcox.test(x,conf.level=0.95,alternative="two.sided",correct=TRUE)

Dan ada CI David Olive untuk median dibahas di sini:

CI untuk Median


1

Hasil berdasarkan pendekatan qbinom tidak benar untuk sampel kecil. Misalkan x memiliki 10 komponen. Kemudian qbinom (c (.025, .975), 10, .5) memberikan 2 dan 8. Interval yang dihasilkan tidak memperlakukan statistik pesanan di ekor bawah secara simetris dengan yang dari ekor atas; Anda harus mendapatkan 2 dan 9, atau 3 dan 8. Jawaban yang tepat adalah 2 dan 9. Anda dapat memeriksa terhadap proc univariate di SAS. Tangkap di sini adalah Anda tidak perlu lebih dari 0,025 probabilitas di bawah dan di atas; kuantil yang lebih rendah tidak melakukan ini, karena memberikan setidaknya 0,025 pada atau di bawah. Anda bisa diselamatkan di bagian bawah karena hitungan yang seharusnya 1 harus dipetakan ke statistik urutan kedua, menghitung 0, dan begitu "off per satu" dibatalkan. Pembatalan yang tidak disengaja ini tidak terjadi di atas, sehingga Anda mendapatkan jawaban yang salah di sini. Pengurutan kode (x) [qbinom (c (.025, .975), panjang (x) ,. 5) + c (0,1)] hampir berfungsi, dan 0,5 dapat digantikan oleh nilai-nilai kuantil lain untuk mendapatkan interval kepercayaan untuk kuantil lain, tetapi itu tidak akan benar ketika ada sedemikian sehingga P [X <= a ] =. 025. Lihat, misalnya, Higgins, Statisitcs Nonparametric.

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.