Kesikli verilerle Kolmogorov-Smirnov: R'de dgof :: ks.test'in doğru kullanımı nedir?


23

Acemi sorular:

İki ayrı veri setinin aynı dağıtımdan gelip gelmediğini test etmek istiyorum. Bana bir Kolmogorov-Smirnov testi önerildi.

Conover ( Pratik Parametrik Olmayan İstatistik , 3d), Kolmogorov-Smirnov Testinin bu amaç için kullanılabileceğini söylüyor, ancak davranışı, ayrık dağılımlarla “muhafazakar” ve burada ne anlama geldiğinden emin değilim.

DavidR'in başka bir soru üzerine yaptığı yorumda “KS istatistiklerine dayanarak hala bir seviye α testi yapabilirsiniz, ancak kritik değeri elde etmek için başka bir yöntem bulmanız gerekecek, örneğin simülasyon yoluyla.”

Dgof R paketi (içinde ks.test sürümü () makale , cran ) istatistik paket () ks.test varsayılan sürümünde bulunmayan bazı yetenekleri ekler. Diğer şeylerin yanı sıra, dgof :: ks.test bu parametreyi içerir:

simulate.p.value: sadece belirli uyumsuzluk testleri için p-değerlerinin Monte Carlo simülasyonu ile hesaplanıp hesaplanmayacağını gösteren bir mantık.

Simulate.p.value = T, DavidR'in önerdiği şeyi gerçekleştirmek için mi?

Öyle olsa bile, iki örneklemli bir test için gerçekten dgof :: ks.test kullanıp kullanamayacağımdan emin değilim. Sürekli bir dağıtım için sadece iki örnekli bir test sağlıyor gibi gözüküyor:

Y sayısal ise, x ve y'nin aynı sürekli dağılımdan çizildiği boş hipotezin iki örneklem bir testi yapılır.

Alternatif olarak, y, sürekli (kümülatif) bir dağıtım fonksiyonunu (veya böyle bir fonksiyonu) isimleyen bir karakter dizgisi veya ayrık bir dağılım veren bir ecdf fonksiyonunu (veya sınıf stepfun nesnesini) içerebilir. Bu durumlarda, x örneklemeli dağıtım fonksiyonunun dağılım y olduğu boşluğundan tek örnekli bir test yapılır.

(Arka plan ayrıntıları: Açıkça konuşursak, temel dağılımlarım süreklidir, ancak veriler bir avuç noktaya çok yakındır. Her nokta bir simülasyonun sonucudur ve -1 ile 10 arasında gerçek sayıların ortalamasıdır. 1. Simülasyonun sonunda, bu sayılar neredeyse her zaman 0,9 veya -,9'a çok yakındır, bu nedenle araçlar birkaç değer etrafında toplanır ve ben bunları ayrık olarak ele alıyorum. Verilerin iyi bilinen bir dağılım izlediğini düşünmek için sebep.)

Tavsiye?


Dr G'nin burada ks.boot'un ihtiyacım olan şey olduğunu öne süren yorumunu fark ettim , ama hala dgof :: ks.test'in simülasyon seçeneğinin işe yarayıp yaramayacağını ve "dönüştürücünün" ne anlama geldiğini merak ediyorum.
Mars

Yanıtlar:


16

Bu, @jbrucks uzantısına bir cevaptır (ancak orijinali de yanıtlar).

2 numunenin aynı popülasyon / dağılımdan gelip gelmediğine veya bir fark olup olmadığına dair genel bir test permütasyon testidir. Bir ilgi istatistiği seçin, bu KS testi istatistiği veya araçların farkı ya da medyanların farkı ya da varyansların oranı olabilir ya da ... (sorunuz için en anlamlı olan ne olursa olsun, muhtemel koşullar altında simülasyonlar yapabilirsiniz) hangi istatistik size en iyi sonuçları verir) ve orijinal 2 örnek üzerinde bu statüleri hesaplayın. Daha sonra, gruplar arasındaki gözlemlere rastgele izin verirsiniz (tüm veri noktalarını bir büyük havuzda gruplandırın, daha sonra orijinal örneklerle aynı boyutta rastgele 2 gruba ayırın) ve izin verilen örnekler üzerindeki ilgi istatistiklerini hesaplayın. Bunu birkaç kez tekrarlayın, Örnek istatistiklerin dağılımı, boş dağıtımınızı oluşturur ve testi oluşturmak için orijinal istatistiği bu dağılımla karşılaştırın. Boş hipotezin, dağılımların sadece araçların / medyanın / etc ile aynı olmadığını aynı olduğuna dikkat edin. eşittir.

Eğer dağılımların aynı olduğunu varsaymak istemiyorsanız, ancak / medians / etc anlamında bir fark olup olmadığını test etmek istiyorsanız. o zaman bir önyükleme yapabilirdi.

Verilerin hangi dağıtımdan geldiğini biliyorsanız (veya en azından bir dağıtımı kabul etmeye istekliysanız), parametrelerin eşitliği üzerine bir olasılık oranı testi yapabilirsiniz (modeli, her iki gruptaki modele tek bir parametre seti ile karşılaştırın. ayrı parametre setleri ile). Benzerlik oranı testi genellikle birçok durumda iyi olan ki-kare dağılımını kullanır (asimptotik), ancak küçük örneklem boyutları kullanıyorsanız veya sınırının yakınında bir parametre test ediyorsanız (örneğin, 0 varyansı), o zaman yaklaşık değer olmayabilir. iyi, daha iyi bir boş dağılım elde etmek için tekrar permütasyon testini kullanabilirsiniz.

Bu testlerin tümü sürekli veya kesikli dağılımlarda çalışır. Ayrıca, belirsizlik miktarını belirtmek için bir miktar güç ölçüsü veya bir güven aralığı eklemelisiniz, önemsizlik, düşük güçten kaynaklanıyor olabilir veya istatistiksel olarak anlamlı bir fark hala pratik olarak anlamsız olabilir.


Greg, teşekkürler. Bu, jbruck'un sorusuna çok faydalı bir genel cevap ve benim için de faydalı. (Sorularım daha belirgindi. Cevaplar beklemek için çok dardı.)
Mars

1
@ Ana, bence cevabım en azından sizin bölümünüze dolaylı olarak cevap veriyor. Düzenli KS testi bağları yoktur ve sıfır hipotezi altında test istatistiği için teorik bir model kullanır. Bağları olan teorik model kesin değildir ancak bunun yerine simülasyonu (permütasyon testi, null dist den benzetmek, vb.) Boş null dağılımını hesaplamak ve dolayısıyla bir p-değeri elde etmek için kullanabilirsiniz. Bahsettiğiniz tartışma.
Greg Snow
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.