Cara menulis istilah kesalahan dalam tindakan berulang ANOVA di R: Kesalahan (subjek) vs Kesalahan (subjek / waktu)

10

Pertanyaan saya adalah sangat erat kaitannya dengan posting sebelumnya Menentukan Kesalahan () istilah dalam tindakan berulang ANOVA di R . Namun, saya ingin mendapatkan lebih banyak wawasan tentang cara mendefinisikan istilah kesalahan.

Misalkan saya memiliki ANOVA dua arah yang diulang, Faktor untuk antara efek kelompok adalah Pengobatan (kontrol vs plasebo), sedangkan Waktu adalah efek dalam kelompok yang diukur berulang kali lebih dari 4 kali (T1 ~ T4). ID Pasien dicatat sebagai Subjek. Di sini saya meminjam data dari contoh dari tutorial di http://gjkerns.github.io/R/2012/01/20/power-sample-size.html sehingga data terlihat seperti ini

 Time Subject Method      NDI
 0min    1     Treat 51.01078
 15min   1     Treat 47.12314
 48hrs   1     Treat 26.63542
 96hrs   1     Treat 20.78196
 0min    2     Treat 42.61345
 15min   2     Treat 32.77171

Untuk menerapkan ANOVA:

aovComp <- aov(NDI ~ Time*Method + Error(Subject/Time), theData)
summary(aovComp)
Error: Subject
          Df Sum Sq Mean Sq F value Pr(>F)
Method     1    113   112.7   0.481  0.491
Residuals 58  13579   234.1              

Error: Subject:Time        
            Df Sum Sq Mean Sq F value  Pr(>F)    
Time          3  13963    4654 103.789 < 2e-16 ***
Time:Method   3   1221     407   9.074 1.3e-05 ***
Residuals   174   7803      45 

Saya juga mencoba istilah kesalahan lainnya:

aovComp1 <- aov(NDI ~ Time*Method + Error(Subject), theData)
summary(aovComp1)

Error: Subject      
          Df Sum Sq Mean Sq F value Pr(>F)
Method     1    113   112.7   0.481  0.491
Residuals 58  13579   234.1               

Error: Within
             Df Sum Sq Mean Sq F value  Pr(>F)    
Time          3  13963    4654 103.789 < 2e-16 ***
Time:Method   3   1221     407   9.074 1.3e-05 ***
Residuals   174   7803      45

Dapatkah seseorang membantu saya menjelaskan perbedaan antara dua istilah kesalahan ini? Jika istilah pertama adalah yang benar, apa artinya hasil dari istilah kesalahan kedua?

Pembaruan oleh @amoeba: Dua output sama sehingga tampaknya dalam hal ini tidak ada perbedaan, tetapi pertanyaannya tetap tentang apa perbedaan prinsipnya . Apakah Error(subject)dan Error(subject/time)selalu hal yang sama?

tiantianchen
sumber
3
maaf, saya baru sadar kalau kedua istilah ini memberikan hasil yang sama. Jadi saya kira mereka sama :-)
tiantianchen
1
Saya berharap untuk penjelasan tentang ini: /
vipin8169
Yang dapat saya kumpulkan tentang istilah kesalahan adalah ini >> >> "Dalam desain tindakan berulang, kita perlu menentukan istilah kesalahan yang menjelaskan variasi alami dari peserta ke peserta. (Misalnya, saya mungkin bereaksi sedikit berbeda terhadap musik menakutkan daripada Anda lakukan karena saya suka film zombie dan Anda membencinya!) Kami melakukan ini dengan fungsi Error (): khususnya, kami mengatakan bahwa kami ingin mengontrol variasi antar-peserta atas semua variabel dalam-subjek kami. "
vipin8169
(+1) Mereka setara hanya jika ada tepat 1 pengukuran per setiap kombinasi subjek / waktu. Jika ada lebih banyak pengukuran per kombinasi subjek / waktu (baik hanya karena pengukuran diulangi, atau karena ada faktor lain dalam subjek B, di samping time), maka Error(subject)dan Error(subject/time)akan menghasilkan nilai F dan p yang berbeda untuk time.
amoeba
Pertanyaan yang sama pada SO: stackoverflow.com/questions/37497948 - sayangnya tanpa jawaban yang memuaskan sepenuhnya (imho).
amoeba

Jawaban:

2

Pertama, subject/timeadalah notasi untuk timebersarang subject, dan berkembang menjadi dua bagian, subjectdan subject:timeinteraksi. Jadi pertanyaannya menjadi lebih tepat, kapan kita harus menentukan subject:timeinteraksi, dan apa bedanya?

Sebelum menjawab pertanyaan ini, satu hal penting lainnya yang harus disadari adalah bahwa semua model menyertakan satu istilah kesalahan tambahan yang tidak perlu ditentukan, yang merupakan istilah kesalahan yang terkait dengan pengukuran individu (tingkat terendah, jika Anda memikirkannya secara hierarkis).

Dalam hal ini, subject:timeinteraksinya adalah level terendah, yang selalu termasuk dalam model. Jadi menggunakan Error(subject)dan Error(subject/time)memberikan hasil yang sama; satu-satunya perbedaan adalah bahwa dalam output, tingkat hasil dipanggil Withinuntuk yang pertama dan dipanggil subject:timeuntuk yang kedua.

Namun, dalam kasus di mana ada beberapa pengukuran pada setiap subject/timekombinasi, perlu untuk menentukan subject:timeinteraksi, karena interaksi itu tidak pada tingkat terendah.

Aaron meninggalkan Stack Overflow
sumber
(Saya punya karunia terbuka untuk pertanyaan ini tapi sayangnya kehabisan kemarin ...) +1, tapi saya pikir jawaban ini menghindari apa yang mungkin menjadi masalah utama di sini: di hadapan beberapa pengukuran per setiap subject/timekombinasi, mengapa kita perlu ingin menguji efek timerelatif terhadap subject:timeinteraksi? Ini pada dasarnya adalah isi dari pertanyaan saya di sini stats.stackexchange.com/questions/286280 , jadi saya akan mengundang pembaca masa depan dari utas ini untuk mencari pembenaran konseptual di sana.
amoeba
Juga, ada T dan A yang sangat mirip di sini: stats.stackexchange.com/questions/247582 .
amoeba