Klasik bir örneklemin (eşli dahil) ve iki örneklemli eşit varyans t-testlerinin tamamen eski olduğunu söyleyemem, ama mükemmel özelliklere sahip birçok seçenek var ve çoğu durumda kullanılması gerekiyor.
Son zamanlarda Wilcoxon-Mann-Whitney testlerini büyük numunelerde - hatta permütasyon testlerinde - hızlıca yapabilme yeteneğimin son zamanlarda, öğrenci olarak 30 yıldan fazla bir süre önce rutin olarak yaptığımı ve yapabileceklerini de söyleyemem. bu noktada uzun süredir kullanılabilir.
†
İşte size bazı alternatifler ve neden yardımcı olabilecekleri:
Welch-Satterthwaite - değişkenliklerin eşit seviyeye yakın olacağından emin değilseniz (örneklem büyüklükleri aynı ise eşit eşitlik varsayımı kritik değildir)
Wilcoxon-Mann-Whitney - Kuyruklar normal veya normalden ağırsa, özellikle simetrik olan durumlarda bile mükemmeldir. Kuyrukları normale yakın olma eğilimindeyse, araçlar üzerindeki permütasyon testi biraz daha fazla güç sağlayacaktır.
sağlamlaştırılmış t testleri - normalde iyi güce sahip olan ancak daha ağır kuyruklu veya biraz eğriltme alternatifleri altında iyi çalışan (ve iyi gücü koruyan) çeşitli türler vardır.
GLM'ler - sayımlar veya sürekli sağa çarpık durumlar (örneğin gama) için yararlıdır; varyansın ortalama ile ilişkili olduğu durumlarla başa çıkmak için tasarlanmıştır.
rastgele etkiler veya zaman serisi modelleri , belirli bağımlılık formlarının olduğu durumlarda faydalı olabilir.
Bayesci yaklaşımlar , önyükleme ve yukarıdaki fikirlere benzer avantajlar sağlayabilecek diğer önemli tekniklerin bir bolluğu. Örneğin, bir Bayesian yaklaşımıyla, kirletici bir işlemi hesaba katabilecek, sayıları veya çarpık verileri ele alabilecek ve aynı zamanda belirli bağımlılık biçimlerini kaldırabilecek bir modele sahip olmak oldukça mümkün .
Kullanışlı alternatiflerin bir bolluğu mevcut olsa da, eski stok standart eşit varyans iki örnek t testi, popülasyon normalden çok uzak olmadıkça (çok kuyruklu olmak gibi) büyük, eşit boyutlu örneklerde sıklıkla iyi performans gösterebilir. / çarpık) ve bağımsızlığımız çok yakın.
Alternatifler, düz t-testinden emin olamadığımız birçok durumda kullanışlıdır ... ve yine de, t-testinin varsayımları karşılandığında veya karşılanmaya yakın olduğunda genellikle iyi performans gösterir.
Eğer dağılım normalden çok uzakta sapma eğiliminde değilse Welch mantıklı bir varsayılandır (daha büyük numuneler daha fazla boşluğa izin verirken).
Permütasyon testi mükemmel olsa da, varsayımları geçerli olduğunda t-testine kıyasla hiçbir güç kaybı olmadan (ve doğrudan ilgilenilen miktar hakkında çıkarım yapmanın faydası), Wilcoxon-Mann-Whitney tartışmasız daha iyi bir seçimdir. kuyrukları ağır olabilir; Küçük bir ek varsayımla, WMW ortalama kayma ile ilgili sonuçlar verebilir. (Bir kişinin permütasyon testine tercih etmesinin başka nedenleri vardır)
[Sayma sayılarıyla, bekleme süreleriyle veya benzer türde verilerle uğraştığınızı biliyorsanız, GLM yolu genellikle mantıklıdır. Potansiyel bağımlılık şekilleri hakkında biraz bilginiz varsa, bu da kolayca idare edilir ve bağımlılık potansiyeli dikkate alınmalıdır.]
Dolayısıyla t testi kesinlikle geçmişte kalmayacak olsa da, uygulandığı zaman hemen hemen her zaman en iyisini ya da neredeyse yapabileceğini ve alternatiflerden birini almadığı zaman potansiyel olarak büyük bir kazanç elde edebilirsiniz. . Söylemek istediğim, bu testte t-testi ile ilgili düşünceye tamamen katılıyorum. Verileri toplamadan önce muhtemelen tahminlerinizi düşünmeniz gerekir ve eğer bunlardan herhangi biri gerçekten beklenmeyebilirse dayanmak için, t-testi ile genellikle bu varsayımı yapmamakta kaybedilecek hiçbir şey yoktur, çünkü alternatifler genellikle çok iyi çalışır.
Veri toplamada büyük sıkıntı yaşanacaksa, çıkarımlarınıza yaklaşmanın en iyi yolunu düşünerek içtenlikle yatırım yapmamak için kesinlikle hiçbir neden yoktur.
Genelde, varsayımların açıkça test edilmesine karşı tavsiyede bulunduğumu unutmayın - yalnızca yanlış soruyu cevaplamakla kalmaz, bunu yapar ve ardından varsayımın reddedilmesine veya reddedilmemesine dayanan bir analizin seçilmesi, her iki test seçeneğinin özelliklerini etkiler; varsayımı makul bir şekilde güvenli bir şekilde yerine getiremiyorsanız (ya süreci başarabilecek kadar iyi bildiğiniz için ya da işlem şartlarınızda ona karşı duyarlı olmadığından), genellikle prosedürü kullanmaktan daha iyi olduğunuzu söyleyerek bu varsayılmaz.
†
# set up some data
x <- c(53.4, 59.0, 40.4, 51.9, 43.8, 43.0, 57.6)
y <- c(49.1, 57.9, 74.8, 46.8, 48.8, 43.7)
xyv <- stack(list(x=x,y=y))$values
nx <- length(x)
# do sample-x mean for all combinations for permutation test
permmean = combn(xyv,nx,mean)
# do the equivalent resampling for a randomization test
randmean <- replicate(100000,mean(sample(xyv,nx)))
# find p-value for permutation test
left = mean(permmean<=mean(x))
# for the other tail, "at least as extreme" being as far above as the sample
# was below
right = mean(permmean>=(mean(xyv)*2-mean(x)))
pvalue_perm = left+right
"Permutation test p-value"; pvalue_perm
# this is easier:
# pvalue = mean(abs(permmean-mean(xyv))>=abs(mean(x)-mean(xyv)))
# but I'd keep left and right above for adapting to other tests
# find p-value for randomization test
left = mean(randmean<=mean(x))
right = mean(randmean>=(mean(xyv)*2-mean(x)))
pvalue_rand = left+right
"Randomization test p-value"; pvalue_rand
(Elde edilen p değerleri sırasıyla 0,538 ve 0,539'dur; karşılık gelen sıradan iki örnek t testi 0,504'lük bir p değerine sahiptir ve Welch-Satterthwaite t-testi 0,522'lik bir p değerine sahiptir.)
Hesaplama kodunun her durumda permütasyon testi için kombinasyonlar için 1 satır olduğunu ve p değerinin de 1 satırda yapılabileceğini unutmayın.
Bunu bir permütasyon testi veya randomizasyon testi yapan ve bir t-testi gibi çıktı üreten bir işleve uyarlamak önemsiz bir mesele olacaktır.
İşte sonuçların bir görüntüsü:
# Draw a display to show distn & p-vale region for both
opar <- par()
par(mfrow=c(2,1))
hist(permmean, n=100, xlim=c(45,58))
abline(v=mean(x), col=3)
abline(v=mean(xyv)*2-mean(x), col=3, lty=2)
abline(v=mean(xyv), col=4)
hist(randmean, n=100, xlim=c(45,58))
abline(v=mean(x), col=3)
abline(v=mean(xyv)*2-mean(x), col=3, lty=2)
abline(v=mean(xyv), col=4)
par(opar)