Intro
Saya memiliki peserta yang berulang kali menyentuh permukaan yang terkontaminasi dengan E. coli dalam dua kondisi ( A = memakai sarung tangan, B = tanpa sarung tangan). Saya ingin tahu apakah ada perbedaan antara jumlah bakteri di ujung jari mereka dengan dan tanpa sarung tangan tetapi juga antara jumlah kontak. Kedua faktor tersebut adalah di dalam partisipan.
Metode eksperimen:
Peserta (n = 35) menyentuh setiap kotak sekali dengan jari yang sama untuk maksimum 8 kontak (lihat gambar a).
Saya kemudian menyeka jari peserta dan mengukur bakteri di ujung jari setelah setiap kontak. Mereka kemudian menggunakan jari baru untuk menyentuh jumlah permukaan yang berbeda dan seterusnya dari 1 hingga 8 kontak (lihat gambar b).
Berikut adalah data nyata : data nyata
Data ini tidak normal jadi lihat distribusi marginal bakteri | NumberContacts di bawah ini. x = bakteri. Setiap sisi adalah jumlah kontak yang berbeda.
MODEL
Mencoba dari lme4 :: glmer berdasarkan saran amoeba menggunakan Gamma (tautan = "log") dan polinomial untuk NumberContacts:
cfug<-glmer(CFU ~ Gloves + poly(NumberContacts,2) + (-1+NumberContacts|Participant),
data=(K,CFU<4E5),
family=Gamma(link="log")
)
plot(cfug)
NB. Gamma (tautan = "terbalik") tidak akan berjalan dengan mengatakan PIRLS separuh langkah gagal mengurangi penyimpangan.
Hasil:
qqp (resid (cfug))
Pertanyaan:
Apakah model glmer saya didefinisikan dengan benar untuk menggabungkan efek acak dari setiap peserta dan fakta bahwa setiap orang melakukan keduanya percobaan A diikuti oleh percobaan B ?
Tambahan:
Autokorelasi tampaknya ada di antara peserta. Ini mungkin karena mereka tidak diuji pada hari yang sama dan labu bakteri tumbuh dan menurun dari waktu ke waktu. Apakah itu penting?
ACF (CFU, lag = 35) menunjukkan korelasi yang signifikan antara satu peserta dan yang berikutnya.
NumberContacts
sebagai faktor numerik dan memasukkan istilah polinomial kuadratik / kubik. Atau lihat Generalized Additive Mixed Models.CFU ~ Gloves * poly(NumberContacts,2) + (Gloves * poly(NumberContacts,2) | Participant)
atau sesuatu seperti itu.CFU ~ Gloves * poly(NumberContacts,2) + (Gloves + poly(NumberContacts,2) | Participant)
atau mungkin menghapus Sarung tangan dari sanaCFU ~ Gloves * poly(NumberContacts,2) + (poly(NumberContacts,2) | Participant)
...Gloves * poly(NumberContacts,2) + (poly(NumberContacts,2) | Participant)
model yang cukup baik.Jawaban:
Beberapa plot untuk mengeksplorasi data
Di bawah ini delapan, satu untuk setiap jumlah kontak permukaan, petak xy yang menunjukkan sarung tangan versus tanpa sarung tangan.
Setiap individu diplot dengan sebuah titik. Rerata dan varians dan kovarians ditunjukkan dengan titik merah dan elips (jarak Mahalanobis sesuai dengan 97,5% populasi).
Korelasi kecil menunjukkan bahwa memang ada efek acak dari individu (jika tidak ada efek dari orang tersebut maka tidak boleh ada korelasi antara sarung tangan berpasangan dan tidak ada sarung tangan). Tetapi ini hanya efek kecil dan seorang individu mungkin memiliki efek acak berbeda untuk 'sarung tangan' dan 'tidak ada sarung tangan' (misalnya untuk semua titik kontak yang berbeda, individu mungkin memiliki jumlah yang lebih tinggi / lebih rendah secara konsisten untuk 'sarung tangan' daripada 'tanpa sarung tangan') .
Plot di bawah ini adalah plot terpisah untuk masing-masing 35 individu. Gagasan plot ini adalah untuk melihat apakah perilaku itu homogen dan juga untuk melihat fungsi apa yang cocok.
Perhatikan bahwa 'tanpa sarung tangan' berwarna merah. Dalam sebagian besar kasus, garis merah lebih tinggi, lebih banyak bakteri untuk kasus 'tanpa sarung tangan'.
Saya percaya bahwa plot linier harus cukup untuk menangkap tren di sini. Kerugian dari plot kuadratik adalah bahwa koefisien akan lebih sulit untuk ditafsirkan (Anda tidak akan melihat secara langsung apakah kemiringan positif atau negatif karena istilah linear dan kuadratik memiliki pengaruh pada hal ini).
Tetapi yang lebih penting Anda melihat bahwa tren sangat berbeda di antara individu yang berbeda dan karena itu mungkin berguna untuk menambahkan efek acak untuk tidak hanya intersep, tetapi juga kemiringan individu.
Model
Dengan model di bawah ini
.
Ini memberi
kode untuk mendapatkan plot
chemometrics :: function drawMahal
5 x 7 plot
2 x 4 plot
sumber
Mengenai apakah akan menggunakan
MASS:glmmPQL
ataulme4:glmer
untuk model Anda, pemahaman saya adalah bahwa kedua fungsi ini akan cocok dengan model yang sama (selama Anda mengatur persamaan model, distribusi dan fungsi tautan sama), tetapi mereka menggunakan metode estimasi yang berbeda untuk menemukan kecocokan. Saya bisa saja salah, tetapi pemahaman saya dari dokumentasi adalah yangglmmPQL
menggunakan kuasi-kemungkinan hukuman seperti yang dijelaskan dalam Wolfinger dan O'Connell (1993) , sedangkanglmer
menggunakan quadrature Gauss-Hermite. Jika Anda khawatir tentang hal itu, Anda dapat mencocokkan model Anda dengan kedua metode dan memeriksa apakah mereka memberikan estimasi koefisien yang sama dan dengan cara itu Anda akan memiliki keyakinan yang lebih besar bahwa algoritma pemasangan telah konvergen ke MLEs sebenarnya dari koefisien.Variabel ini memiliki urutan alami yang muncul dari plot Anda untuk memiliki hubungan yang lancar dengan variabel respons, sehingga Anda dapat memperlakukannya sebagai variabel numerik. Jika Anda memasukkannya
factor(NumberContacts)
maka Anda tidak akan membatasi bentuknya dan Anda tidak akan kehilangan banyak derajat kebebasan. Anda bahkan bisa menggunakan interaksiGloves*factor(NumberContacts)
tanpa kehilangan terlalu banyak derajat kebebasan. Namun, perlu dipertimbangkan apakah menggunakan variabel faktor akan melibatkan pemasangan data yang berlebihan. Mengingat bahwa ada hubungan yang cukup lancar dalam plot Anda, fungsi linear sederhana atau kuadratik akan mendapatkan hasil yang baik tanpa pemasangan berlebihan.Anda telah meletakkan variabel respons Anda pada skala log dengan menggunakan fungsi tautan logaritmik, sehingga efek intersep untuk
Participant
memberi efek multiplikatif pada respons. Jika Anda memberi ini kemiringan acak yang berinteraksi dengannyaNumberContacts
maka itu akan memiliki efek berbasis kekuatan pada respons. Jika Anda menginginkan ini maka Anda bisa mendapatkannya dengan(~ -1 + NumberContacts|Participant)
yang akan menghapus intersepsi tetapi menambahkan kemiringan berdasarkan jumlah kontak.Mulailah dengan melihat plot residu Anda untuk melihat apakah ada bukti heteroskedastisitas. Berdasarkan plot yang sudah Anda sertakan, tampaknya bagi saya ini bukan masalah, jadi Anda tidak perlu menambahkan bobot untuk varians. Jika ragu Anda bisa menambahkan bobot menggunakan fungsi linier sederhana dan kemudian melakukan uji statistik untuk melihat apakah kemiringan bobotnya rata. Itu akan menjadi tes formal heteroskedastisitas, yang akan memberi Anda cadangan untuk pilihan Anda.
Jika Anda sudah memasukkan istilah efek acak untuk peserta, maka mungkin ide buruk untuk menambahkan istilah korelasi otomatis pada jumlah kontak. Percobaan Anda menggunakan jari yang berbeda untuk jumlah kontak yang berbeda sehingga Anda tidak akan mengharapkan autokorelasi untuk kasus di mana Anda telah memperhitungkan peserta. Menambahkan istilah autokorelasi di samping efek peserta akan berarti bahwa Anda berpikir ada ketergantungan bersyarat antara hasil jari yang berbeda, berdasarkan jumlah kontak, bahkan untuk peserta yang diberikan.
sumber
Memang, masuk akal untuk berpendapat bahwa pengukuran yang diambil dari satu peserta tidak independen dari yang diambil dari peserta lain. Sebagai contoh, beberapa orang mungkin cenderung menekan jari mereka dengan kekuatan lebih (atau kurang), yang akan memengaruhi semua pengukuran mereka di setiap jumlah kontak.
Jadi ANOVA 2 arah yang diulang akan menjadi model yang dapat diterima untuk diterapkan dalam kasus ini.
Atau, kita juga bisa menerapkan model efek campuran dengan
participant
sebagai faktor acak. Ini adalah solusi yang lebih maju dan lebih canggih.sumber