Deteksi Outlier pada Distribusi miring

24

Di bawah definisi klasik dari pencilan sebagai titik data di luar 1,5 * IQR dari kuartil atas atau bawah, ada asumsi distribusi tidak miring. Untuk distribusi miring (Eksponensial, Poisson, Geometris, dll) adalah cara terbaik untuk mendeteksi pencilan dengan menganalisis transformasi fungsi asli?

Misalnya, distribusi yang secara longgar diatur oleh distribusi eksponensial, dapat ditransformasikan dengan fungsi log - pada titik mana dapat diterima untuk mencari pencilan berdasarkan definisi IQR yang sama?

Eric
sumber
4
Ada banyak pertanyaan di situs ini tentang penilaian outlier. Satu hal yang perlu Anda tambahkan di sini untuk mendapatkan jawaban yang masuk akal adalah apa yang sebenarnya Anda coba lakukan atau cari tahu. Tetapi sebagai permulaan, 1.5*IQRdefinisi pencilan tidak diterima secara universal. Coba bongkar pertanyaan Anda dan perluas masalah yang Anda coba selesaikan.
John
Pernyataan bahwa nilai lebih dari 1,5 IQR adalah pencilan adalah omong kosong belaka. Data yang melebihi 1,5 IQR akan sepenuhnya konsisten dengan jumlah distribusi yang tak terbatas, dan ketika ukuran sampel menjadi besar, orang bisa memiliki keyakinan yang hampir sempurna bahwa data tersebut BUKAN outlier.
serigala

Jawaban:

18

Di bawah definisi klasik dari pencilan sebagai titik data di luar 1,5 * IQR dari kuartil atas atau bawah,

Ini adalah aturan untuk mengidentifikasi titik-titik di luar ujung kumis dalam kotak. Tukey sendiri tidak akan keberatan untuk menyebut mereka outlier atas dasar ini (dia tidak selalu menganggap poin di luar batas itu sebagai outlier). Ini lebih baik berupa poin yang - jika data Anda diharapkan dari distribusi yang agak mirip dengan distribusi normal - orang mungkin akan diselidiki lebih lanjut (seperti memeriksa Anda tidak mengubah dua digit, misalnya) - paling banyak bisa menjadi pencilan potensial . Seperti yang ditunjukkan oleh Nick Cox dalam komentar di bawah jawaban ini , ekor dari banyak poin seperti itu akan dianggap lebih sebagai indikator bahwa ekspresi ulang mungkin lebih cocok daripada indikasi perlunya menganggap poin sebagai outlier.

ada asumsi distribusi tidak miring.

Saya berasumsi dengan 'non-condong' yang Anda maksud simetris. Maka anggapannya lebih dari itu. Distribusi berat tetapi simetris mungkin memiliki banyak poin di luar batas pada aturan itu.

Untuk distribusi miring (Eksponensial, Poisson, Geometris, dll) adalah cara terbaik untuk mendeteksi pencilan dengan menganalisis transformasi fungsi asli?

Itu tergantung pada apa yang merupakan pencilan untuk tujuan Anda. Tidak ada definisi tunggal yang cocok untuk setiap tujuan - memang, umumnya Anda mungkin lebih baik melakukan hal-hal lain yang (katakanlah) memilih outlier dan menghilangkannya.

Untuk eksponensial atau geometris, Anda mungkin melakukan perhitungan yang serupa dengan yang untuk plot kotak, tetapi yang akan mengidentifikasi fraksi yang sama di ekor kanan saja (Anda tidak akan memiliki titik-titik low-end diidentifikasi dalam eksponensial atau geometris) .. atau Anda mungkin melakukan hal lain.

Dalam sampel besar, boxplot menandai sekitar 0,35% poin di setiap ujung, atau sekitar 0,7% secara total. Untuk eksponensial, Anda dapat menandai beberapa median, misalnya. Jika Anda ingin menandai sekitar 0,7% dari total poin untuk eksponensial aktual, itu akan menyarankan menandai poin di luar sekitar 7,1 kali median.

Menandai poin di atas 7,1 kali median untuk n = 1000 biasanya akan mencapai antara 0,4% hingga 1,1% dari nilai:

ae <- rexp(1000)
table( ae > 7.1*median(ae) )

FALSE  TRUE 
  993     7 

Misalnya, distribusi yang secara longgar diatur oleh distribusi eksponensial, dapat ditransformasikan dengan fungsi log - pada titik mana dapat diterima untuk mencari pencilan berdasarkan definisi IQR yang sama?

Itu benar-benar tergantung pada apa yang Anda maksud dengan "dapat diterima". Perhatikan, bahwa -

i) distribusi yang dihasilkan sebenarnya tidak simetris, tetapi condong ke kiri.

masukkan deskripsi gambar di sini

Akibatnya, Anda biasanya hanya akan menandai poin di ujung kiri (yaitu mendekati nol, di mana Anda mengharapkan nilai eksponensial tetap) daripada di kanan (di mana "outlier" mungkin), kecuali mereka benar - benar ekstrim.

ii) kesesuaian aturan seperti itu akan sangat tergantung pada apa yang Anda lakukan.

Jika Anda khawatir tentang nilai aneh ganjil yang mempengaruhi kesimpulan Anda, secara umum, Anda mungkin lebih baik menggunakan prosedur yang kuat daripada mengidentifikasi outlier secara formal.

Jika Anda benar-benar ingin menggunakan aturan berbasis normal untuk mentransformasikan data eksponensial atau Poisson, setidaknya saya sarankan menerapkannya ke akar kuadrat untuk Poisson (selama rata-rata tidak terlalu kecil, seharusnya kira-kira normal) dan untuk memotong akar atau bahkan akar keempat untuk eksponensial (dan mungkin, dengan ekstensi, geometrik).

atau mungkin , seperti padatransformasi AnscombeX+38

masukkan deskripsi gambar di sini

Untuk eksponensial, dalam sampel besar pendekatan cube-root akan cenderung untuk menandai poin hanya di ekor atas (pada tingkat yang kira-kira sama itu menandai mereka di ekor atas untuk normal) dan pendekatan akar keempat menandai poin di kedua ekor (sedikit lebih banyak di ekor bawah, total pada sesuatu yang mendekati 40% dari laju yang dilakukannya untuk normal). Dari kemungkinan-kemungkinan, root cube lebih masuk akal bagi saya daripada dua yang lain, tapi saya tidak akan menyarankan menggunakan ini sebagai aturan keras dan cepat.

Glen_b -Reinstate Monica
sumber
1
"Distribusi berat tetapi simetris mungkin memiliki banyak poin di luar batas pada aturan itu." Selalu ada tepat 50% dari semua poin dalam IQR, bukan?
JulienD
2
(Q1-1.5×IQR,Q3+1.5×IQR)
@ Glen_b Ambang penolakan atas untuk eksponensial dalam jawaban Anda mengasumsikan bahwa parameter shift (atau theta) diketahui. Saya pikir ini harus disebutkan.
user603
1
@ user603 Istilah " distribusi eksponensial " (juga lihat di sini ) tanpa kata sifat modifikasi (seperti "bergeser" atau "dua parameter") yang paling konvensional mengacu pada versi satu-parameter. Beberapa orang menyebut versi bergeser "distribusi eksponensial", tetapi itu relatif jarang; hanya sedikit lebih umum daripada memanggil distribusi lognormal bergeser "distribusi lognormal".
Glen_b -Reinstate Monica
1
@ user603 Oh, maaf, miskomunikasi sederhana - dalam kasus itu ya, saya tidak berpikir kami memiliki ketidaksetujuan substantif - di mana ada kemungkinan outlier besar di sebelah kiri, pendekatan yang saya sebutkan tidak masuk akal sama sekali . Saya benar-benar tidak berusaha untuk menghadapi potensi situasi itu (tetapi dalam pembelaan saya, itu tidak terlihat bagi saya seperti OP menganggapnya sebagai kemungkinan - saya ragu mengambil kayu akan muncul di benak jika itu).
Glen_b -Reinstate Monica
14

Saya akan menjawab pertanyaan Anda dalam urutan yang berlawanan dengan yang Anda tanyakan, sehingga paparan berlangsung dari spesifik ke umum.

Pertama, mari kita pertimbangkan situasi di mana Anda dapat mengasumsikan bahwa kecuali untuk sebagian kecil pencilan, sebagian besar data Anda dapat digambarkan dengan baik oleh distribusi yang diketahui (dalam kasus Anda eksponensial).

x

halX(x)=σ-1exp(-(x-θ)σ),x>0;σ>0

xθ=0

Penaksir MLE biasa dari parameter adalah [0, p 506]:

θ^=minsayaxsaya

dan

σ^=avesayaxsaya-minsayaxsaya

Berikut adalah contoh di R:

n<-100
theta<-1
sigma<-2
set.seed(123) #for reproducibility
x<-rexp(n,rate=1/sigma)+theta
mean(x)-min(x)

σ2.08

xsaya-xsaya

m<-floor(0.2*n)
y<-x
y[1:m]<--y[1:m]
mean(y)-min(y)

σ11.12xsaya100xsaya

m<-floor(0.2*n)
z<-x
z[1:m]<-100*z[1:m]
mean(z)-min(z)

σ54

Alternatif untuk MLE mentah adalah (a) menemukan outlier menggunakan aturan identifikasi outlier yang kuat , (b) menyisihkannya sebagai data palsu dan (c) menghitung MLE pada bagian yang tidak palsu dari sampel.

Aturan identifikasi outlier kuat yang paling terkenal adalah aturan med / mad yang diusulkan oleh Hampel [3] yang menghubungkannya dengan Gauss (saya menggambarkan aturan ini di sini ). Dalam aturan med / mad, ambang penolakan didasarkan pada asumsi bahwa pengamatan asli dalam sampel Anda didekati dengan baik oleh distribusi normal.

Tentu saja, jika Anda memiliki informasi tambahan (seperti mengetahui bahwa distribusi pengamatan asli diperkirakan dengan baik oleh distribusi poisson seperti dalam contoh ini ) tidak ada yang mencegah Anda mengubah data Anda dan menggunakan aturan penolakan outlier dasar ( med / mad) tapi ini membuat saya agak canggung untuk mengubah data untuk mempertahankan apa yang akhirnya merupakan aturan ad-hoc.

Tampaknya jauh lebih logis bagi saya untuk menyimpan data tetapi menyesuaikan aturan penolakan. Kemudian, Anda masih akan menggunakan prosedur 3 langkah yang saya jelaskan di tautan pertama di atas, tetapi dengan ambang penolakan disesuaikan dengan distribusi Anda mencurigai bagian baik dari data. Di bawah ini, saya memberikan aturan penolakan dalam situasi di mana pengamatan asli dilengkapi dengan distribusi eksponensial. Dalam hal ini, Anda bisa membuat ambang penolakan yang baik menggunakan aturan berikut:

θ

θ^=medsayaxsaya-3.476Qn(x)di2

3.476

2) tolak karena semua pengamatan di luar palsu [2, p 188]

[θ^,9(1+2/n)medsayaxsaya+θ^]

(faktor 9 dalam aturan di atas diperoleh sebagai 7.1 dalam jawaban Glen_b di atas, tetapi menggunakan cut-off yang lebih tinggi. Faktor (1 + 2 / n) adalah faktor koreksi sampel kecil yang diperoleh dengan simulasi dalam [2]. Untuk ukuran sampel yang cukup besar, pada dasarnya sama dengan 1).

σ

σ^=avesayaHxsaya-minsayaHxsaya

H={saya:θ^xsaya9(1+2/n)medsayaxsaya+θ^}

menggunakan aturan ini pada contoh sebelumnya, Anda akan mendapatkan:

library(robustbase)
theta<-median(x)-Qn(x,constant=3.476)*log(2)
clean<-which(x>=theta & x<=9*(1+2/n)*median(x)+theta)
mean(x[clean])-min(x[clean])

σ2.05

theta<-median(y)-Qn(y,constant=3.476)*log(2)
clean<-which(y>=theta & y<=9*(1+2/n)*median(y)+theta)
mean(y[clean])-min(y[clean])

σ2.2

Pada contoh ketiga:

theta<-median(z)-Qn(z,constant=3.476)*log(2)
clean<-which(z>=theta & z<=9*(1+2/n)*median(z)+theta)
mean(z[clean])-min(z[clean])

σ2.2

{saya:sayaH}

Sekarang, untuk kasus umum di mana Anda tidak memiliki distribusi kandidat yang baik agar sesuai dengan sebagian besar pengamatan Anda di luar mengetahui bahwa distribusi simetris tidak akan dilakukan, Anda dapat menggunakan boxplot yang disesuaikan [4]. Ini adalah generalisasi dari boxplot yang memperhitungkan ukuran kemiringan (non parametrik dan outlier) dari data Anda (sehingga ketika sebagian besar data simetris runtuh ke boxplot yang biasa). Anda juga dapat memeriksa jawaban ini untuk ilustrasi.

  • [0] Johnson NL, Kotz S., Balakrishnan N. (1994). Distribusi Univariat Berkelanjutan, Volume 1, Edisi ke-2.
  • [1] Rousseeuw PJ dan Croux C. (1993). Alternatif untuk Median Absolute Deviation. Jurnal Asosiasi Statistik Amerika, Vol. 88, No. 424, hlm. 1273--1283.
  • [2] JK Patel, CH Kapadia, dan DB Owen, Dekker (1976). Buku pegangan distribusi statistik.
  • [3] Hampel (1974). Kurva Pengaruh dan Perannya dalam Estimasi Kuat. Jurnal Asosiasi Statistik Amerika Vol. 69, No. 346 (Juni, 1974), hlm. 383-393.
  • [4] Vandervieren, E., Hubert, M. (2004) "Boxplot yang disesuaikan untuk distribusi yang miring". Statistik Komputasi & Analisis Data Volume 52, Edisi 12, 15 Agustus 2008, Halaman 5186–5201.
pengguna603
sumber
1

Pertama, saya akan mempertanyakan definisi, klasik atau sebaliknya. "Pencilan" adalah poin yang mengejutkan. Menggunakan aturan tertentu (bahkan untuk distribusi simetris) adalah ide yang cacat, terutama saat ini ketika ada begitu banyak set data besar. Dalam kumpulan data (katakanlah) satu juta pengamatan (tidak terlalu besar, di beberapa bidang), akan ada banyak kasus di luar batas 1,5 IQR yang Anda sebutkan, bahkan jika distribusinya normal-normal saja.

Kedua, saya sarankan mencari pencilan pada data asli. Ini hampir selalu lebih intuitif. Misalnya, dengan data pendapatan, cukup umum untuk mengambil log. Tetapi bahkan di sini saya akan mencari outlier pada skala asli (dolar atau euro atau apa pun) karena kita memiliki perasaan yang lebih baik untuk angka-angka seperti itu. (Jika Anda mengambil log, saya sarankan log base 10, setidaknya untuk deteksi outlier, karena setidaknya sedikit intuitif).

Ketiga, saat mencari pencilan, waspadalah terhadap penyamaran.

Akhirnya, saya sedang meneliti algoritma "pencarian maju" yang diusulkan oleh Atkinson dan Riani untuk berbagai macam data dan masalah. Ini terlihat sangat menjanjikan.

Peter Flom - Pasang kembali Monica
sumber