R Programlamada T-Testi: Tek Örnek ve Eşleştirilmiş Örnek

⚡ Akıllı Özet

R'deki T-testi, t.test() fonksiyonunu kullanarak ortalamaları karşılaştırır; tek bir örneği sabit bir hedefe karşı, iki bağımsız grubu ve eşleştirilmiş tekrarlanan ölçümleri kapsar. Bu kılavuz, her bir varyantı çalıştırır, p-değerini doğru şekilde okur ve temel varsayımları doğrular.

  • 📐 Temel İstatistik: T değeri, gözlemlenen ortalama farkın standart hatasına bölünmesiyle elde edilir; dolayısıyla daha büyük değerler sıfır hipotezine karşı bir argüman oluşturur.
  • 🧪 Tek Örneklem Testi: t.test(x, mu = 10) tek bir vektörü, bir tarif spesifikasyonu gibi teorik bir değere karşı kontrol eder.
  • 👥 İki Örneklem Testi: t.test(x, y) iki bağımsız grubu karşılaştırır ve eşit olmayan varyanslar için varsayılan olarak Welch düzeltmesini kullanır.
  • 🔗 Eşleştirilmiş Test: "paired = TRUE" ifadesini eklemek, denek içi farklılıkların ortalamasını test eder ve ortak varyasyonu ortadan kaldırır.
  • Varsayım Kontrolleri: Herhangi bir p-değeri bildirmeden önce normallik için shapiro.test() ve eşit varyans için var.test() fonksiyonlarını kullanın.
  • 📊 Karar Kuralı: 0.05'in altındaki bir p değeri, sıfır hipotezini reddeder, ancak alternatif hipotezin doğru olduğunu asla kanıtlamaz.

R'de Tek Örneklem Eşleştirilmiş T Testi

İstatistiksel Çıkarım Nedir?

İstatistiksel çıkarım, verilerin dağılımı hakkında sonuçlar üretme sanatıdır. Bir veri bilimcisi genellikle yalnızca bilimsel olarak cevaplanabilecek sorularla karşı karşıya kalır. Bu nedenle, istatistiksel çıkarım, bir hipotezin doğru olup olmadığını, yani veriler tarafından doğrulanıp doğrulanmadığını test etme stratejisidir.

Bir hipotezi değerlendirmek için yaygın olarak kullanılan bir strateji, iki ortalamanın eşit olup olmadığını gösteren t-testidir. Bu test aynı zamanda şu şekilde de bilinir: Öğrenci testiAşağıdakiler için t-testi hesaplanabilir:

  1. Tek bir vektörün sabit bir değere karşı karşılaştırılması (tek örneklem t-testi)
  2. İki ayrı gruptan iki vektör (bağımsız iki örneklem t-testi)
  3. Aynı denekler üzerinde ölçülen iki vektör (eşleştirilmiş t-testi)

Her t-testi, verilerin rastgele örneklenmiş olduğunu ve değerlerin (veya eşleştirilmiş bir test için farkların) yaklaşık olarak normal dağılımlı bir popülasyondan geldiğini varsayar. Bağımsız iki örneklem versiyonu ayrıca iki grubun birbirinden bağımsız olduğunu varsayar ve klasik form, varyanslarının eşit olduğunu varsayar.

R Programlamada T-Testi Nedir?

T-Testinin arkasındaki temel fikir, iki karşıt hipotezi değerlendirmek için istatistikleri kullanmaktır:

  • H0: sıfır hipotezi, popülasyon ortalamasının test edilen değere eşit olduğu hipotezidir.
  • H1Alternatif hipotez, yani popülasyon ortalamasının bu değerden farklı olduğu hipotezi.

T-testi, normal yaklaşımın güvenilir olmadığı küçük örneklem boyutları için tasarlanmıştır. Verilerin yaklaşık olarak normal dağılıma sahip olmasını gerektirir.

R'de T-Test Söz Dizimi

R'deki t.test() işlevinin temel sözdizimi şöyledir:

t.test(x, y = NULL,
       mu = 0, var.equal = FALSE)
arguments:
- x : A vector to compute the one-sample t-test
- y: A second vector to compute the two sample t-test
- mu: Mean of the population under the null hypothesis
- var.equal: Specify whether the variances of the two vectors are equal. By default, set to `FALSE`
- paired: Set to `TRUE` when the two vectors are repeated measures on the same subjects

Herhangi bir işlem başlatmadan önce, veri düzeninizi testin doğru varyantıyla eşleştirin.

R'de T-Testi Türleri

T-testinde en sık yapılan hata yanlış varyantı seçmektir, bu nedenle öncelikle veri düzeninizi doğru varyantla eşleştirerek başlayın.

Menşei Bunu ne zaman kullanacaksın? R çağrısı
Tek örnek Bir grup bilinen bir hedef değerle karşılaştırıldı. t.test(x, mu = değer)
Bağımsız iki örneklem (Welch) İki ayrı grup, varyanslar muhtemelen eşit değil t.test(x, y)
Bağımsız iki örneklem (birleştirilmiş) Eşit varyansa sahip iki ayrı grup t.test(x, y, var.equal = TRUE)
Eşli Aynı deneklerin ölçümleri iki kez alındı. t.test(x, y, paired = TRUE)
Tek taraflı Siz sadece tek yöndeki bir farkla ilgileniyorsunuz. t.test(x, mu = değer, alternatif = “daha ​​büyük”)

Üçten fazla grup için t-testi artık uygun değildir. Şuna geçin: ANOVA testiBu yöntem, tekrarlanan ikili karşılaştırmalarda hata oranının artması yerine, genel hata oranını yüzde 5'te tutar.

R'de Bir Örnek T Testi

Tek Örneklem t-testi veya öğrenci testi, bir vektörün ortalamasını teorik bir ortalamayla karşılaştırır. R'de Bir Örnek T Testi. T-testini hesaplamak için kullanılan formül şöyledir:

R'de Bir Örnek T Testi

Burada,

  • R'de Bir Örnek T Testi ortalamayı ifade eder
  • R'de Bir Örnek T Testi teorik ortalamaya
  • s standart sapmadır
  • n gözlem sayısı.

T testinin istatistiksel anlamlılığını değerlendirmek için şunları hesaplamanız gerekir: p-değeri. p-değeri 0 ile 1 arasında değişir ve aşağıdaki şekilde yorumlanır:

  • 0.05'ten düşük bir p değeri, sıfır hipotezini reddedebileceğiniz anlamına gelir. H0'ı reddetmenin, H1'in doğru olduğunu kanıtlamakla aynı şey olmadığını, yalnızca verilerin H0 altında olasılık dışı olduğunu gösterdiğini unutmayın.
  • 0.05'ten yüksek bir p değeri, sıfır hipotezini reddetmek için yeterli kanıtınız olmadığını gösterir.

Serbestlik derecesi şuna eşit olacak şekilde Öğrenci dağılımındaki t testinin karşılık gelen mutlak değerine bakarak p değerini oluşturabilirsiniz: R'de Bir Örnek T Testi

Örneğin, 5 gözlemle t-değerinizi %95 güven düzeyinde 4 serbestlik derecesine sahip Student dağılımıyla karşılaştırıyorsunuz. İki taraflı bir testte sıfır hipotezini reddetmek için mutlak t-değerinin 2.776'yı aşması gerekir.

Aşağıdaki tabloya bakınız:

R'de Bir Örnek T Testi

R'de Bir Örnek T-Testi Örneği

Diyelim ki kurabiye üreten bir firmasınız. Her kurabiyenin 10 gram şeker içermesi gerekiyor. Kurabiyeler, her şeyi karıştırmadan önce şekeri bir kaseye ekleyen bir makine tarafından üretilir. Sanırsınız ki makine her kurabiyeye 10 gram şeker eklemiyor. Varsayımınız doğruysa makinenin onarılması gerekir. Otuz kurabiyenin şeker seviyesini sakladınız.

not: rnorm() fonksiyonuyla rastgele bir vektör oluşturabilirsiniz. Bu fonksiyon normal dağılmış değerler üretir. Temel sözdizimi şöyledir:

rnorm(n, mean, sd)
arguments
- n: Number of observations to generate
- mean: The mean of the distribution. Optional
- sd: The standard deviation of the distribution. Optional

Ortalaması 30, standart sapması 9.99 olan 0.04 gözlemden oluşan bir dağılım oluşturabilirsiniz.

set.seed(123)
sugar_cookie <- rnorm(30, mean = 9.99, sd = 0.04)
head(sugar_cookie)

Çıktı:

## [1]  9.967581  9.980793 10.052348  9.992820  9.995172 10.058603

Şeker seviyesinin tariftekinden farklı olup olmadığını kontrol etmek için tek örnekli t testi kullanabilirsiniz. Bir hipotez testi çizebilirsiniz:

  • H0: Ortalama şeker seviyesi 10'a eşittir
  • H1: Ortalama şeker seviyesi 10'dan farklıdır

Anlamlılık düzeyi olarak 0.05'i kullanıyorsunuz.

# H0 : mu = 10
t.test(sugar_cookie, mu = 10)

İşte çıktı:

R'de Bir Örnek T-Testi Örneği

Tek örneklem t-testinin p değeri 0.1079 olup, 0.05 eşiğinin üzerindedir. Ortalama için %95 güven aralığı 9.973 ile 10.002 gram arasında değişmekte ve hedef değer olan 10'u içermektedir. Bu nedenle H0 hipotezini reddedemezsiniz: makinenin tariften sapmasına dair yeterli kanıt yoktur.

R'de Bağımsız İki Örneklem T-Testi

Bağımsız iki örneklem t-testi en sık kullanılan varyanttır ve iki ölçüm seti farklı deneklerden geldiğinde uygulanır: iki mağaza, iki makine, iki tedavi kolu.

Diyelim ki bir fabrikada iki üretim hattı var ve bu hatlardaki kavanozların aynı ağırlıkta doldurulup doldurulmadığını öğrenmek istiyorsunuz.

set.seed(123)
line_a <- rnorm(25, mean = 500, sd = 8)
line_b <- rnorm(25, mean = 505, sd = 8)

# Welch test, the safe default
t.test(line_a, line_b)

# Pooled test, only when the variances are equal
t.test(line_a, line_b, var.equal = TRUE)

Çıktıyı dört adımda okuyun.

  1. t Bu, iki ortalama arasındaki farkın standartlaştırılmış boyutudur. İşareti yalnızca vektörleri hangi sırayla geçirdiğinizi yansıtır.
  2. df n, serbestlik derecesidir. Welch kesirli bir değer üretir; birleştirilmiş test ise n1 + n2 – 2'ye eşit bir tam sayı verir.
  3. p-değeri Gerçek ortalamalar aynı olsaydı, bu kadar büyük bir farkın görülme olasılığı nedir?
  4. Güven aralığı Gerçek farkı sınırlar. Sıfır içeriyorsa, fark o seviyede anlamlı değildir.

Verileriniz tek bir veri çerçevesinde, bir değer sütunu ve bir faktör sütunundan oluşuyorsa, okunması daha kolay olan ve verileri elle bölmeyi gerektirmeyen formül arayüzünü kullanın:

t.test(weight ~ line, data = jars)

Hangi sürümü kullanmalı? Varyansların eşit olduğunu test edip doğrulamadığınız sürece var.equal parametresini varsayılan değeri olan FALSE'da bırakın. Varyanslar eşleştiğinde Welch düzeltmesi neredeyse hiçbir güç kaybına neden olmaz ve eşleşmediğinde sizi korur.

R'de Eşleştirilmiş T Testi

Bağımlı örneklem t-testi olarak da adlandırılan eşleştirilmiş t-testi, aynı grubun iki kez ölçüldüğü durumlarda uygulanır. Tipik uygulamaları şunlardır:

  • A / B Testi: İki seçeneği karşılaştırın
  • Vaka kontrol çalışmalarıAynı denekler üzerinde yapılan tedavi öncesi ve sonrası görüntüler.

R'de Eşleştirilmiş T Testi Örneği

Bir içecek şirketi, indirim programının satışlardaki performansını bilmekle ilgilenmektedir. Şirket, programın tanıtıldığı mağazalarından birinin günlük satışlarını takip etmeye karar vermiştir. Programın sonunda şirket, programdan önce ve sonra mağazanın ortalama satışları arasında istatistiksel bir fark olup olmadığını bilmek istemektedir.

  • şirket tracProgram başlamadan önce her gün satışları takip ettik. Bu bizim ilk vektörümüz.
  • Program bir hafta boyunca tanıtılıyor ve satışlar her gün kaydediliyor. Bu bizim ikinci vektörümüz.
  • Programın etkililiğini değerlendirmek için t-testini gerçekleştireceksiniz. Buna eşleştirilmiş t testi denir çünkü her iki vektörün değerleri de aynı dağılımdan (yani aynı mağazadan) gelir.

Hipotez testi şu şekildedir:

  • H0: Ortalamada fark yok
  • H1: İki anlam farklıdır

Unutmayın ki klasik t-testi, her iki grupta da bilinmeyen ancak eşit varyans varsayımına dayanır. Gerçek veriler nadiren bu varsayımı tam olarak karşılar ve aradaki farkı göz ardı etmek sonucu bozabilir.

Çözüm, eşit varyans varsayımını gevşeten Welch'in t-testidir. R, aksi belirtilmedikçe var.equal FALSE olduğu için bunu varsayılan olarak uygular. Bu veri setinde her iki vektör de aynı standart sapmayla oluşturulmuştur, bu nedenle var.equal = TRUE olarak güvenle ayarlayabilirsiniz.

Programdan sonra satışlar için daha yüksek ortalamaya sahip bir Gauss dağılımından iki rastgele vektör yaratırsınız.

set.seed(123)
# sales before the program
sales_before <- rnorm(7, mean = 50000, sd = 50)
# sales after the program.This has higher mean
sales_after <- rnorm(7, mean = 50075, sd = 50)
# draw the distribution
t.test(sales_before, sales_after,var.equal = TRUE)

R'de Eşleştirilmiş T Testi Örneği

p değeri 0.04606 olup, 0.05 eşiğinin hemen altındadır; bu nedenle H0 hipotezini reddeder ve iki ortalamanın önemli ölçüde farklı olduğu sonucuna varırsınız. İndirim programının satışları artırdığı görülmektedir.

⚠️ Önemli: Yukarıdaki çağrı, iki vektörü şu şekilde karşılaştırır: bağımsız Örnekler. Her iki seri de aynı mağazada yapılan ölçümler olduğundan, istatistiksel olarak doğru sonuç şunları içerir: eşleştirilmiş = DOĞRU:

t.test(sales_before, sales_after, paired = TRUE)

Eşleştirilmiş form, iki ortalama arasındaki farkı değil, gün bazındaki farkların ortalamasını test eder. Her iki vektör tarafından paylaşılan mağaza düzeyindeki varyasyonu ortadan kaldırır ve bu nedenle daha yüksek istatistiksel güce sahiptir.

R'de T-Testi Varsayımlarını Nasıl Kontrol Edebilirsiniz?

T-testi p-değeri, ancak varsayımları geçerli olduğunda anlamlıdır. Her birinin doğrudan bir kontrolü vardır.

1. Normallik. Tek örneklem ve iki örneklem testleri, değerlerin yaklaşık olarak normal dağılıma sahip olduğunu varsayar; eşleştirilmiş test ise... farklılıkları QQ grafiğini inceleyin ve Shapiro-Wilk testiyle doğrulayın:

qqnorm(sugar_cookie); qqline(sugar_cookie)
shapiro.test(sugar_cookie)

# for a paired design, test the differences
shapiro.test(sales_after - sales_before)

0.05'in üzerindeki bir Shapiro-Wilk p-değeri, normalliğin reddedilemeyeceği anlamına gelir. Grup başına yaklaşık 30'dan fazla gözlem olduğunda, merkezi limit teoremi, t-testini orta dereceli çarpıklığa karşı zaten dayanıklı hale getirir.

2. Eşit varyans. Bu yalnızca birleştirilmiş iki örneklem testi için gereklidir. Bunu bir F testi ile test edin:

var.test(line_a, line_b)

0.05'in üzerindeki bir p değeri, eşit varyansları destekler ve bu da var.equal = TRUE seçeneğinin kullanımını haklı çıkarır.

3. Bağımsızlık. Bu, çalışma tasarımından kaynaklanmaktadır ve sonradan test edilemez. Eğer aynı denek her iki vektöre de katkıda bulunuyorsa, bağımsız test yanlış bir araçtır ve eşleştirilmiş = TRUE seçeneğini kullanmanız gerekir.

Bir varsayımın yanlış çıkması durumunda. Küçük örneklem büyüklüğüne sahip ve açıkça normal dağılım göstermeyen veriler için, sıralamaya dayalı alternatifleri kullanın: wilcox.test(x, y) iki örneklemli t-testinin yerini alırken, wilcox.test(x, y, paired = TRUE) eşleştirilmiş versiyonun yerini alır. Her ikisi de normallik gerektirmez, ancak veriler aslında normal olduğunda biraz güç kaybına neden olurlar.

R'de T-Testi: Temel Çıkarımlar ve Test Referansı

  • İstatistiksel Çıkarım, verilerin dağılımı hakkında sonuçlar üretme sanatıdır.
  • T-Testi çıkarımsal istatistik ailesine aittir. Genellikle iki grubun ortalamaları arasında istatistiksel bir fark olup olmadığını bulmak için kullanılır.
  • Tek örneklem t-testi veya Student testi, bir vektörün ortalamasını teorik bir ortalama ile karşılaştırır.
  • Eşleştirilmiş t-testi veya bağımlı örneklem t-testi, aynı grubun iki kez ölçüldüğü durumlarda uygulanır.

Aşağıdaki tabloda yukarıda ele alınan her test özetlenmiştir:

test Test edilecek hipotez p-değeri Code İsteğe bağlı bağımsız değişken
tek örnek t testi Bir vektörün ortalaması teorik ortalamadan farklıdır 0.05
t.test(x, mu = mean)
eşleştirilmiş örnek t testi Aynı denekler için A ortalaması B ortalamasından farklıdır. 0.05
t.test(A, B, paired = TRUE)
var.equal = TRUE

Bağımsız iki örneklem testinde eşit varyans varsayımını kabul ediyorsanız, var.equal = TRUE olarak ayarlayın. Daha güvenli olan Welch düzeltmesini çalıştırmak için varsayılan FALSE değerinde bırakın.

SSS

Eşleştirilmiş test, aynı deneklerin iki kez ölçülmesi durumunda denek içi farklılıkları analiz eder. Bağımsız test ise iki ayrı grubu karşılaştırır. Eşleştirilmiş verilerde bağımsız test kullanmak, bilgiyi ortadan kaldırır ve istatistiksel gücü azaltır.

Varyansların eşit olduğunu doğrulamadığınız durumlarda Welch algoritmasını kullanın; bu nedenle R bunu varsayılan olarak uygular. Varyanslar eşleştiğinde neredeyse hiç güç tüketmez ve eşleşmediğinde hata oranını korur.

Küçük örneklemler için, wilcox.test() fonksiyonu ile Wilcoxon sıra toplamı veya işaretli sıra testine geçin. Daha büyük örneklemler için, merkezi limit teoremi, normallikten orta dereceli sapmalara rağmen t-testinin güvenilirliğini korur.

Ekipler, aynı çapraz doğrulama katmanları boyunca iki modeli karşılaştırmak ve bir A/B deneyi sonucunun gerçek olup olmadığını değerlendirmek için eşleştirilmiş t-testleri kullanır. Eşleştirilmiş tasarım, karşılaştırmadan katmanlar arası varyasyonu ortadan kaldırır.

Evet. Yapay zekâ asistanları serbestlik derecelerini açıklayabilir, güven aralıklarını anlaşılır bir dile çevirebilir ve yanlış varyant seçildiğinde uyarı verebilir. Her okumayı kendi shapiro.test() ve var.test() sonuçlarınızla doğrulayın.

Bu yazıyı şu şekilde özetleyin: