Soru:
Aynı kategorik değişkeni iki popülasyonda nasıl test edebilirim?
Zelbinian
2013-03-07 22:18:14 UTC
view on stackexchange narkive permalink

Biraz şuna benzeyen verilerim var:

  Kimlik Durum01 A02 G03 E ... ... 100 G  

fikir sanırım. Bu verileri iki ayrı popülasyondan (kohort) aldım ve bir popülasyondaki durum değişkeninin dağılımını diğerindeki dağılımla karşılaştırmak istiyorum. Cevapladığım soru şuna benzer: Daha iyisini bilmiyorsan, bunlar aynı popülasyondan olabilir mi? Sanırım bu, emin olmasam da bir Kişinin chi kare yapmam gerektiği anlamına geliyor. Değişkeni testi çalıştırmanıza izin verecek şekilde dönüştürmek için kullanılan metodolojiden de emin değilim. (Özellikle R'de bunu nasıl yapacağımı bilmek istiyorum)

üç yanıtlar:
Glen_b
2013-03-08 06:01:21 UTC
view on stackexchange narkive permalink

(a) Önce mekanikten ziyade temeldeki fikri açıklamama izin verin - geriye dönüp bakıldığında daha açık hale geliyorlar. Sonra (b) ki-kare hakkında konuşacağım (ve uygun olup olmadığı - olmayabilir!) Ve sonra (c) R'de nasıl yapılacağından bahsedeceğim.

(a) Boş değer altında, popülasyonlar aynıdır. İki grubunuzu tek bir büyük veri kümesine koyduğunuzu, ancak kohort etiketlerini içeren bir sütun eklediğinizi hayal edin. Daha sonra, sıfırın altında, kohort etiketi etkin bir şekilde, gözlemin geldiği dağılım hakkında size daha fazla bir şey söyleyen rastgele bir etikettir.

Alternatife göre, elbette, kohort etiketleri önemlidir - kohort etiketini bilmek size onu bilmemekten daha fazlasını anlatır çünkü iki etiketin altındaki dağılımlar farklıdır.

(Bu hemen Örnek üzerinde hesaplanan bir istatistiğin - alternatife duyarlı bir istatistiğin, aynı istatistiğin dağılımı ile rasgele sıralara yeniden atanan kohort etiketleri ile karşılaştırıldığı bir tür permütasyon testi / randomizasyon testi önerir. bir permütasyon testi, sadece örnek alırsanız bu bir randomizasyon testidir.)

(b) Peki şimdi ki-kare nasıl yapılır?

Boş değerin altında beklenen değerleri hesaplarsınız . Grup etiketleri boş değer altında önemli olmadığından, her bir hücrede beklenen sayıyı genel dağıtıma göre hesaplarsınız:

  Durum AB ... E ... G ... Toplam Kohort 1: 10 15 18 84 Kohort 2: 9 7 25 78 Toplam: 19 22 ... 43 ... 162  

Öyleyse dağılım aynıysa, hiçbir kohort ve durum arasındaki ilişki ve (satır toplamları ve sütun toplamları için koşullu) $ (i, j) $ hücresindeki beklenen sayı satır-toplam-i $ \ times $ sütun-toplam-j / genel- toplam

Yani sıradan bir ki-kare bağımsızlık testi yaptırırsınız.

ANCAK!

Durum etiketleri sıralı bir kategori oluşturuyorsa, bu ki-kare testi pek çok bilgiyi çöpe atıyor demektir - ilginç alternatiflere karşı düşük bir güce sahip olacaktır (daha yükseğe veya daha aşağıya doğru hafif bir kayma gibi) kategoriler). Bu durumda daha uygun bir şey yapmalısınız - yani, bu sıralamayı dikkate alan. Pek çok seçenek var.

-

(c) Şimdi bunu R'de nasıl yapacağınızla ilgili - verilerinizin şu anda R'de nasıl ayarlandığına bağlı - bu gerçekten verilerinizin bir alt kümesi gibi yeniden üretilebilir bir örneğe sahip olmanıza yardımcı olur!

Biri durum (faktör) ve diğeri olmak üzere iki sütunlu bir veri çerçevesine sahip olduğunuzu varsayacağım kohort ile (ikinci bir faktör).

Öyle gibi:

  status cohort1 B Cohort12 B Cohort13 D Cohort14 B Cohort15 C Cohort16 D Cohort1. .. 25 G Cohort226 E Cohort227 E Cohort228 D Cohort229 C Cohort230 G Cohort2  

O zaman bu statusresults adlı bir veri çerçevesi olsaydı, aşağıdaki gibi bir tablo alırdınız Daha önce yaptığım bir:

  > with (statusresults, table (cohort, status)) statuscohort ABCDEFG Cohort1 2 6 7 3 0 0 0 Cohort2 0 0 2 2 4 1 3  

Ve kare testi için, şu şekilde gidersiniz:

  > with (statusresults, chisq.test (status, cohort)) Pearson Chi-square testdata: status ve kohort X-kare = 18.5185, df = 6, p-değeri = 0.005059 Uyarı mesajı: chisq.test'te (durum, kohort): Ki-kare yaklaşımı yanlış olabilir  

( uyarı, çok küçük bir örnek kullandığım için bazı hücrelerde beklenen sayıların düşük olmasından kaynaklanmaktadır)

Durum kategorileri sıraladıysanız, bunu söylemelisiniz, böylece analiz için diğer olasılıkları tartışabiliriz. düz kare.

Chi-2 örneği için teşekkürler! Hücre sayıları aslında örneğinizdeki kadar düşükse ne önerirsiniz? Yani ki-kare testi için ön koşullar ihlal edildi mi?
@MarkHeckmann Gerçekten böyle bir 'önkoşul' yoktur. Ki-kare dağılımı, her zaman ki-karenin gerçek sıfır dağılımına bir yaklaşımdır ve bu, ne kadar kaba bir yaklaşıma tahammül edebileceğinizle ilgilidir (örneğin, p değerlerinde ne kadar yanlışlığı tolere edebilirsiniz. dağıtım). Çok sayıda makalenin tartıştığı gibi, en yaygın genel kural çok katıdır. Ancak beklenen sayılar çok küçük olsaydı, ki-kare testinin sıfır dağılımından simülasyon kullanırdım veya uygun herhangi bir istatistiği seçer ve (a) 'da açıklanan permütasyon yaklaşımını kullanırdım.
Huub Hoofs
2013-03-08 05:07:44 UTC
view on stackexchange narkive permalink

Ki-kare testi yapma fikri konusunda haklısınız. İşte burada:

  #İki veri kümesi oluşturun (kimlik, sonuç ve grup etiketi) Dat1 <- as.data.frame (cbind (1: 999, örnek (c ("A" , "G", "E"), 999, replace = T, prob = c (.2, .4, .4)), "grup1")) Dat2 <- as.data.frame (cbind (1: 500 , örnek (c ("A", "G", "E"), 500, değiştir = T, prob = c (.4, .2, .4)), "grup2")) # Veri kümelerini birleştirDat <- rbind (Dat1, Dat2) # Tanımlayıcı istatistikleri alın ve Chi-Squareattach (Dat) tablosunu (V3, V2) chisq.test (tablo (V3, V2)) detach (Dat)  

hesaplayın Doğruysa, Ki-Kare önemli olacaktır, dolayısıyla iki grubun dağılımları arasında önemli bir fark vardır. Başlamak için bir referans için bkz: http://en.wikipedia.org/wiki/Pearson%27s_chi-squared_test http://www.statmethods.net/stats/frequencies.html

TenaliRaman
2013-03-08 15:29:26 UTC
view on stackexchange narkive permalink

Bu makale [1] ilginizi çekebilir. Özetten alıntı:
İki örnek testinin (a.k.a. homojenlik testi) amacı, örneklerin arkasındaki olasılık dağılımlarının aynı olup olmadığına karar vermek için iki örnek setidir. Bu yazıda, en küçük kareler yoğunluk oranı tahmin edicisine dayanan iki örneklemli testin parametrik olmayan yeni bir yöntemi öneriyoruz. Çeşitli deneyler yoluyla, önerilen yöntemin genel olarak daha küçük tip-II hatası ürettiğini gösteriyoruz (yani, iki dağılımın gerçekte farklı olduklarında aynı olduğunu değerlendirme olasılığı), son teknoloji bir yöntemden daha büyük tip-I hatası (yani, gerçekte aynı olduklarında iki dağılımın farklı olduğuna karar verme olasılığı).

Yazarlar ayrıca aynı [2] için matlab kodu sağlarlar.

[1] http://www.ms.ku-tokyo.ac.jp/2011/LSTT.pdf
[2] http: //www.ms.ku-tokyo.ac.jp/software.html#uLSIF



Bu Soru-Cevap, otomatik olarak İngilizce dilinden çevrilmiştir.Orijinal içerik, dağıtıldığı cc by-sa 3.0 lisansı için teşekkür ettiğimiz stackexchange'ta mevcuttur.
Loading...