Aykırı değerleri ortaya çıkarmak için dışarıda bırakma ortalaması ve standart sapma kullanabilir miyiz?


17

Diyelim ki normal veri dağıtımı yaptım. Verilerin her bir elemanı için ortalamadan kaç SD olduğunu kontrol etmek istiyorum. Verilerde bir aykırı değer olabilir (muhtemelen sadece bir, ama aynı zamanda iki veya üç olabilir), ancak bu aykırı temelde aradığım şeydir. Şu anda baktığım öğeyi ortalama ve SD'nin hesaplanmasından geçici olarak hariç tutmak mantıklı mı? Benim düşüncem, ortalamanın yakınındaysa, herhangi bir etkisi olmadığıdır. Eğer bir aykırı değerse, ortalama ve SD hesaplamasını saptırabilir ve saptanma olasılığını düşürebilir. Ben bir istatistikçi değilim, bu yüzden herhangi bir yardım takdir!


7
Mükemmel bir anlam ifade eder ve birçok aykırı algılama tekniğinin temelini oluşturur. Ancak, işe yarayıp yaramayabilecek kendi yönteminizi icat etmek yerine (ve ikincisi, istatistikçiler tarafından yeni icat edilen yöntemlerle bile çok daha olasıdır, bu yüzden dikkatli bir çalışmaya ihtiyaç duyuyorlar), neden teorik olarak bir yöntem kullanmıyorsunuz? kontrol edildi ve deneysel olarak test edildi mi?
whuber

Bunu işaret ettiğiniz için teşekkürler. Bu teknikleri arayacağım ve verilerimde iyi performans gösterip göstermediklerini göreceğim!
Oliver

1
R Regresyon Silme Tanı üzerinde bu sayfaya göz atın: stat.ethz.ch/R-manual/R-patched/library/stats/html/...
Ben Ogórek

.... Ve bu cevap, neden tek bir aykırı değerden fazlasını bulmak için bağımlı olamayacağının gösterilmesine yöneliktir.
user603

Aykırı değerlerin işaretlenmesi fikri hakkında büyük düşünceler. Bir ara, işaretleme anormalliklerinde kayıp geçiren filtreler fikri üzerine bir makale yazmıştım. Umarım bu, yukarıda sunulan fikri genişletmeye yardımcı olur. Makaleye
Pramit

Yanıtlar:


25

Karşılıklı-sezgisel görünebilir, ancak tarif ettiğiniz yaklaşımı kullanmak mantıklı değil (ifadenizi almak için "yazmayı tercih ettiğimden çok farklı sonuçlara yol açabilir") ve kişi bunu asla yapmamalıdır: riskleri işe yaramaz ve sonuç olarak, ek bir ücret ödemeden daha basit, daha güvenli ve daha iyi kurulmuş bir alternatif vardır.

İlk olarak, tek bir aykırı değer varsa, sonunda önerdiğiniz prosedürü kullanarak bulacağınız doğrudur . Ancak, genel olarak (verilerde tek bir aykırı değerden fazla olduğunda), önerdiğiniz algoritma, potansiyel olarak iyi bir veri noktasını aykırı olarak reddetmenize veya aykırı değerleri iyi veri noktaları olarak tutmanıza yol açması açısından tamamen bozulur. potansiyel olarak felaketle sonuçlanabilir.

Aşağıda, önerdiğiniz kuralın bozulduğu basit bir sayısal örnek verdim ve daha sonra daha güvenli ve daha köklü bir alternatif öneriyorum, ancak bundan önce a) önerdiğiniz yöntemde neyin yanlış olduğunu ve b) genellikle tercih edilenin ne olduğunu açıklayacağım alternatif.

Temel olarak, bir gözlemin uzaktaki ortalamadan uzaklığını kullanamazsınız ve aykırı değerleri güvenilir bir şekilde tespit etmek için verilerinizin standart sapmasını kullanamazsınız çünkü kullandığınız tahminler (bir dış ortalama ve standart sapma) kalanlara doğru çekilmekle yükümlüdür aykırı değerler: Buna maskeleme efekti denir.

Özetle, aykırı değerleri güvenilir bir şekilde tespit etmenin basit bir yolu, önerdiğiniz genel fikri kullanmaktır (konum ve ölçek tahmininden uzaklık), ancak kullandığınız tahmincileri (bir tane ortalama, sd) sağlam olanlarla değiştirmek - yani tahminler aykırı değerlerin sallanmasına karşı çok daha az hassas olacak şekilde tasarlanmıştır.

Normal 0,1'den alınan 47 gerçek gözleme 3 aykırı değer eklediğim bu örneği düşünün:

n    <- 50
set.seed(123)  # for reproducibility
x    <- round(rnorm(n,0,1), 1)
x[1] <- x[1]+1000
x[2] <- x[2]+10
x[3] <- x[3]+10

Aşağıdaki kod, dışarıda bırakma ortalamasını ve standart sapmayı (örn. Önerdiğiniz yaklaşım) temel alarak dışlama endeksini hesaplar.

out_1 <- rep(NA,n)
for(i in 1:n){  out_1[i] <- abs( x[i]-mean(x[-i]) )/sd(x[-i])  }

ve bu kod aşağıda gördüğünüz grafiği oluşturur.

plot(x, out_1, ylim=c(0,1), xlim=c(-3,20))
points(x[1:3], out_1[1:3], col="red", pch=16)

Şekil 1, dışa dönüklük endeksinizin değerini gözlemlerin değerinin bir fonksiyonu olarak tasvir etmektedir (aykırı değerlerin en uzağında bu çizimin aralığı dışındadır, ancak diğer ikisi kırmızı noktalar olarak gösterilmiştir). Gördüğünüz gibi, en uç olanı hariç, önerdiğiniz gibi inşa edilen bir dışa dönüklik endeksi aykırı değerleri ortaya çıkartamaz: aslında ikinci ve üçüncü (daha hafif) aykırı değerler artık hepsinden daha küçük bir değere (dışsallık endeksinizde) bilegerçek gözlemler! ... Önerdiğiniz yaklaşım çerçevesinde, bu iki uç değer aykırı gerçek gözlemler kümesinde tutulacak ve kalan 49 gözlemi aynı homojen süreçten geliyormuş gibi kullanacak ve size son 0.45 ve 2.32'nin 49 veri noktasına dayanan ortalama ve sd'nin tahmini, örneğin her iki bölümünün de çok zayıf bir açıklaması !

image2

xiX

O(xi,X)=|ximed(X)|mad(X)

med(X)Xmad(X)

R'de, bu ikinci dışsallık endeksi şu şekilde hesaplanabilir:

out_2 <- abs( x-median(x) )/mad(x)

ve kullanarak (daha önce olduğu gibi):

plot(x, out_2, ylim=c(0,15), xlim=c(-3,20))
points(x[1:3], out_2[1:3], col="red", pch=16)

image2

Şekil 2, aynı veri kümesi için bu alternatif dışlama endeksinin değerini çizmektedir. Gördüğünüz gibi, şimdi üç aykırı değer de açıkça bu şekilde ortaya çıkıyor. Ayrıca, bu aykırı değer tespit kuralı bazı belirlenmiş istatistiksel özelliklere sahiptir. Bu, diğer şeylerin yanı sıra, kullanılabilir kesme kurallarına yol açar. Örneğin, verilerin orijinal kısmının sonlu ikinci momentle simetrik bir dağılımdan alınabileceği varsayılırsa, bunun için tüm veri noktalarını reddedebilirsiniz.

|ximed(X)|mad(X)>3.5

aykırı olarak. Yukarıdaki örnekte, bu kuralın uygulanması, gözlem 1,2 ve 3'ü doğru şekilde işaretlemenize yol açacaktır. Bunları reddettiğinizde, kalan gözlemlerin ortalaması ve sd'si reseptif olarak 0.021 ve 0.93'tür, numunenin orijinal kısmının çok daha iyi bir açıklamasıdır. !


2
Hemen çeliştiğiniz ilk cümleye rağmen +1 (OP'nin teklifi , en fazla bir aykırı değer varsayıldığında mantıklıdır; itirazınız bu varsayım ihlal edildiğinde bu prosedürle ilgili problemlerle ilgilidir).
whuber

1
Teşekkür ederim. Bu arada, önceki yorumumu sildim, düzenlemelerinizden sonra geçersiz hale geleceğini tahmin ediyorum.
whuber

3
Birkaç aykırı değerden herhangi birinin tek aykırı algılamayı körleştirdiği fenomene genellikle maskeleme denir . Bu, insanların konuyla ilgili daha fazla bilgi bulmalarına yardımcı olabilir.
Glen_b

1
@ user603 Açıklayıcı bir senaryo oluşturmak iyi bir iş ama bebeği banyo suyuyla dışarı atıyorsunuz. Regresyon silme teşhisi mükemmel değildir, ancak yaygın olarak uygulanabilirler ve zaman testini geçtiler. Ortanca almak iyidir ama merakınızı daha karmaşık olabilirliğe dayalı modellere nasıl genişleteceğinizi merak ediyorum.
Ben Ogorek

2
+6, Bu gerçekten harika bir cevap - açıkça ve iyice açıklanmış, kod, şekil ve formüllerle gösterilmiştir. Okumayı biraz daha kolay hale getirmek için kod biçimlendirmesini biraz değiştirdim. Beğenmediyseniz, özür dilerim.
gung - Monica'yı eski
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.