Menu

Uji T di R: t.test() Satu Sampel, Dua Sampel, dan Berpasangan

Jalankan uji t satu sampel, dua sampel, dan berpasangan dengan t.test(), lalu, bagian yang paling penting, baca setiap baris output-nya: t, df, p-value, dan selang kepercayaan.

Halaman ini dilengkapi editor yang bisa dijalankan. Edit, jalankan, dan lihat output-nya seketika.

Apa yang Ditanyakan Uji T

Setiap uji t menjawab pertanyaan dasar yang sama: apakah selisih rata-rata ini nyata, atau mungkin hanya noise? Sampel itu bergoyang: ukur waktu reaksi sepuluh orang dua kali dan kamu akan mendapat dua rata-rata yang berbeda, padahal tidak ada yang berubah. Uji t membandingkan selisih yang kamu amati dengan goyangan yang wajar terjadi karena kebetulan, lalu melaporkan seberapa mengejutkan datamu jika selisih sebenarnya nol.

Tiga jenis, satu fungsi:

  • Satu sampel: apakah rata-rata kelompok ini berbeda dari sebuah nilai tetap?
  • Dua sampel: apakah dua kelompok independen ini punya rata-rata yang berbeda?
  • Berpasangan: apakah subjek yang sama berubah di antara dua pengukuran?

Satu Sampel: t.test(x, mu = ...)

Misalkan sebuah proses seharusnya rata-rata berlangsung 5.0 detik, dan kamu mencatat waktu sepuluh kali eksekusi:

Rata-rata sampelnya 5.61, tetapi apakah selisih 0.61 di atas target itu bermakna dengan hanya sepuluh eksekusi, atau masih dalam goyangan normal? Itulah yang dijawab oleh output-nya.

Membaca Output Baris demi Baris

Inilah bagian yang paling berharga: output setiap varian t.test() punya bentuk yang sama, jadi pelajari cara membacanya sekali saja. Jalankan blok di atas lalu cocokkan setiap barisnya:

  • t = 4.26: statistik uji, yaitu selisih yang diamati (5.61 − 5 = 0.61) dibagi galat baku rata-rata (sekitar 0.143). Artinya, rata-rata sampel berada sedikit lebih dari empat galat baku dari nilai hipotesis. Makin besar |t|, makin mengejutkan di bawah hipotesis nol.
  • df = 9: derajat kebebasan, di sini n − 1. df yang kecil berarti sampel yang kecil, sehingga uji ini menuntut t yang lebih besar sebelum terkesan.
  • p-value ≈ 0.002: jika rata-rata sebenarnya memang 5, probabilitas mendapatkan sampel yang rata-ratanya setidaknya sejauh ini dari 5 (ke arah mana pun) adalah sekitar 0,2%. Hanya itu artinya. Ini bukan probabilitas bahwa rata-rata sebenarnya adalah 5, dan p-value yang kecil tidak membuktikan penjelasan favoritmu; ia hanya mengatakan "sulit disalahkan pada kebetulan." Dengan ambang batas 0.05 yang biasa, kamu menolak hipotesis nol di sini.
  • alternative hypothesis: pernyataan ulang tentang arti "menolak". not equal to 5 memastikan bahwa uji ini dua sisi.
  • 95 percent confidence interval: 5.29 to 5.93: rentang rata-rata sebenarnya yang cocok dengan data. Perhatikan bahwa 5 berada di luar rentang itu; itu putusan yang sama dengan p < 0.05, dinyatakan dalam satuan data itu sendiri, dan juga memberi tahu besar efek yang masuk akal, sesuatu yang tidak pernah dilakukan p-value.
  • sample estimates: rata-rata yang diamati, supaya pembaca bisa melihat fakta mentah yang diuji.

Kalau kamu butuh bagian-bagiannya lewat kode: result <- t.test(times, mu = 5), lalu result$p.value, result$conf.int, result$estimate.

Dua Sampel: Membandingkan Kelompok Independen

Untuk dua kelompok independen, antarmuka formula terbaca seperti pertanyaannya sendiri. ToothGrowth mencatat pertumbuhan gigi marmut yang diberi vitamin C dalam bentuk jus jeruk (OJ) atau asam askorbat (VC):

Bacalah sebagai "uji len yang dibagi berdasarkan supp." Output-nya sekarang menampilkan dua estimasi sampel (rata-rata per kelompok, sekitar 20.7 vs 17.0), dan selang kepercayaannya untuk selisih di antara keduanya. Di sini p ≈ 0.061 dan selangnya berkisar dari sekitar −0.17 sampai 7.57: selang itu melewati nol, jadi pada tingkat 0.05 kamu tidak bisa menyingkirkan kemungkinan "tidak ada selisih", meskipun selang yang membentang sampai +7.6 juga memperingatkanmu agar tidak menyatakan selisihnya tidak ada. "Tidak signifikan" berarti tidak terbukti ada, bukan terbukti tidak ada.

Welch Adalah Default, dan Itu Bagus

Lihat header output-nya: Welch Two Sample t-test, dengan df pecahan (sekitar 55.3). Uji t Student klasik mengasumsikan kedua kelompok punya varians yang sama; versi Welch membuang asumsi itu dan menyesuaikan derajat kebebasannya sebagai gantinya. Ketika variansnya memang sama, Welch memberi jawaban yang praktis identik; ketika tidak sama, uji Student bisa sangat meleset, sementara Welch tetap jujur. Jadi default R adalah pilihan yang aman, dan jarang ada alasan untuk menggantinya.

Ritual "periksa dulu kesamaan varians, baru pilih ujinya" adalah saran yang sudah ketinggalan zaman; pakai saja Welch.

Berpasangan: Sebelum dan Sesudah

Ketika kedua pengukuran berasal dari subjek yang sama, kelompoknya tidak independen, dan memperlakukannya sebagai independen membuang power uji itu. Nilai delapan orang sebelum dan sesudah sebuah kursus pelatihan:

paired = TRUE menguji rata-rata selisih di dalam setiap orang (di sini rata-ratanya 2.75 poin, p ≈ 0.001). Kenapa pemasangan mengubah segalanya: perbedaan antarorang jauh lebih besar daripada perubahan yang dihasilkan pelatihan pada siapa pun. Sebaran antarsubjek dari 65 sampai 80 akan menenggelamkan peningkatan 2-3 poin di uji yang tidak berpasangan. Mengambil selisih menghapus nilai dasar setiap orang, sehingga yang tersisa hanya perubahannya. Aturannya: kalau datanya punya struktur alami "unit yang sama diukur dua kali", pasangkan. (Dan jangan pernah memakai paired = TRUE ketika kelompoknya memang independen; pemasangannya akan menjadi fiksi.)

Uji Satu Sisi: Hati-hati

Secara default, ujinya dua sisi: selisih ke arah mana pun dihitung sebagai bukti. Kalau, sebelum melihat data, hipotesismu hanya masuk akal ke satu arah, kamu bisa menyatakannya:

P-value-nya menjadi separuh dibandingkan uji dua sisi, itulah persisnya kenapa godaan ini ada: beralih ke satu sisi setelah mengintip data adalah p-hacking. Pakai alternative = "greater" atau "less" hanya dengan arah yang benar-benar sudah ditetapkan sebelumnya; kalau ragu, tetap pakai dua sisi.

Asumsi, dan Alternatifnya

Uji t mengasumsikan observasinya independen dan rata-rata sampelnya kira-kira berdistribusi normal, yang terpenuhi ketika datanya sendiri kurang lebih normal atau sampelnya cukup besar (teorema limit pusat melakukan kerja beratnya; dengan n ≈ 30+ per kelompok, ketidaknormalan yang sedang bukan masalah). Periksa bentuknya dengan histogram atau boxplot singkat. Namun independensi tidak bisa diselamatkan oleh uji apa pun; ia berasal dari cara data dikumpulkan.

Untuk sampel kecil dengan data yang jelas miring atau pencilan ekstrem, alternatif non-parametrik standarnya cukup satu baris: wilcox.test(len ~ supp, data = ToothGrowth), yang membandingkan distribusi lewat peringkat, bukan rata-rata.

Yang Perlu Kamu Ingat

  • t.test(x, mu = ) untuk satu sampel, t.test(y ~ group, data = ) untuk dua sampel, paired = TRUE untuk sebelum/sesudah.
  • P-value adalah "seberapa mengejutkan data ini jika selisih sebenarnya nol", tidak lebih; selang kepercayaan memberi tahu besar efek yang masuk akal dalam satuan sebenarnya.
  • Default dua sampel di R adalah uji Welch (df pecahan); pertahankan.
  • Pemasangan menghilangkan noise antarsubjek; pakai setiap kali unit yang sama diukur dua kali.
  • Alternatif satu sisi hanya dengan arah yang sudah ditetapkan sebelumnya; wilcox.test() adalah alternatif berbasis peringkat.

Berikutnya: membandingkan rata-rata tiga kelompok atau lebih sekaligus, yaitu ANOVA dengan aov().

Pertanyaan yang sering diajukan

Bagaimana cara menjalankan uji t di R?

Dengan t.test(). Satu sampel terhadap nilai tetap: t.test(x, mu = 5). Dua kelompok independen: t.test(value ~ group, data = df). Pengukuran sebelum dan sesudah pada subjek yang sama: t.test(after, before, paired = TRUE).

Bagaimana cara menafsirkan p-value uji t di R?

P-value adalah probabilitas melihat selisih setidaknya sebesar yang kamu dapat jika selisih sebenarnya nol. P-value yang kecil (menurut konvensi di bawah 0.05) berarti data itu sulit dijelaskan sebagai noise, jadi kamu menolak hipotesis nol. Ini bukan probabilitas bahwa hipotesis nol benar, dan tidak mengatakan apa pun tentang seberapa besar atau penting selisihnya; baca selang kepercayaan untuk itu.

Kenapa R melaporkan uji t Welch secara default?

t.test() dua sampel di R secara default memakai versi Welch, yang tidak mengasumsikan kedua kelompok punya varians yang sama; itulah sebabnya derajat kebebasannya berupa pecahan. Welch berperilaku hampir sama dengan uji Student klasik ketika variansnya sama, dan lebih aman ketika tidak sama, jadi default ini pilihan yang tepat. Pakai var.equal = TRUE hanya jika tugas kuliah secara eksplisit meminta uji pooled klasik.

Kapan sebaiknya memakai uji t berpasangan di R?

Ketika dua kumpulan pengukuran datang dalam pasangan alami: subjek yang sama diukur sebelum dan sesudah, atau item yang sama dinilai dengan dua metode. t.test(after, before, paired = TRUE) menguji rata-rata selisih di dalam setiap pasangan, yang menghilangkan variasi antarsubjek dan biasanya memberi power yang jauh lebih besar daripada memperlakukan kelompoknya sebagai independen.

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai