Ekstraksi lereng untuk kasus dari model efek campuran (lme4)

12

Saya ingin mengekstrak lereng untuk masing-masing individu dalam model efek campuran, sebagaimana diuraikan dalam paragraf berikut

Model efek campuran digunakan untuk mengkarakterisasi jalur individu perubahan dalam langkah-langkah ringkasan kognitif, termasuk istilah untuk usia, jenis kelamin, dan tahun pendidikan sebagai efek tetap (Laird dan Ware, 1982; Wilson et al., 2000, 2002c) ... Sisa, istilah kemiringan penurunan kognitif individu diekstraksi dari model campuran, setelah penyesuaian untuk efek usia, jenis kelamin, dan pendidikan. Lereng residu spesifik yang disesuaikan dengan orang kemudian digunakan sebagai fenotipe hasil kuantitatif untuk analisis asosiasi genetik. Estimasi ini sama dengan perbedaan antara kemiringan individu dan kemiringan yang diprediksi dari individu dengan usia, jenis kelamin, dan tingkat pendidikan yang sama.

De Jager, PL, Shulman, JM, Chibnik, LB, Keenan, BT, Raj, T., Wilson, RS, dkk. (2012). Pemindaian lebar genom untuk varian umum yang memengaruhi laju penurunan kognitif terkait usia . Neurobiology of Aging, 33 (5), 1017.e1-1017.e15.

Saya telah melihat menggunakan coeffungsi untuk mengekstrak koefisien untuk setiap individu, tetapi saya tidak yakin apakah ini adalah pendekatan yang tepat untuk digunakan.

Adakah yang bisa memberikan beberapa saran tentang cara melakukan ini?

#example R code 
library(lme4)
attach(sleepstudy)  
fml <- lmer(Reaction ~ Days + (Days|Subject), sleepstudy)
beta <- coef(fml)$Subject
colnames(beta) <- c("Intercept", "Slope")
beta

summary(beta)
summary(fm1)
Andrews
sumber

Jawaban:

28

Model:

library(lme4)
data(sleepstudy)
fm1 <- lmer(Reaction ~ Days + (Days|Subject), sleepstudy)

Fungsinya coefadalah pendekatan yang tepat untuk mengekstraksi perbedaan individu.

> coef(fm1)$Subject
    (Intercept)       Days
308    253.6637 19.6662581
309    211.0065  1.8475834
310    212.4449  5.0184067
330    275.0956  5.6529540
331    273.6653  7.3973908
332    260.4446 10.1951151
333    268.2455 10.2436611
334    244.1725 11.5418622
335    251.0714 -0.2848735
337    286.2955 19.0955694
349    226.1950 11.6407008
350    238.3351 17.0814915
351    255.9829  7.4520286
352    272.2687 14.0032989
369    254.6806 11.3395025
370    225.7922 15.2897513
371    252.2121  9.4791308
372    263.7196 11.7513155

Nilai-nilai ini adalah kombinasi dari efek tetap dan komponen varians (efek acak). Anda dapat menggunakan summarydan coefuntuk mendapatkan koefisien efek tetap.

> coef(summary(fm1))[ , "Estimate"]
(Intercept)        Days 
  251.40510    10.46729 

Intersep adalah 251,4 dan kemiringan (terkait dengan Days) adalah 10,4. Koefisien ini adalah rata-rata dari semua subjek. Untuk mendapatkan efek acak, Anda bisa menggunakan ranef.

> ranef(fm1)$Subject
    (Intercept)        Days
308   2.2585637   9.1989722
309 -40.3985802  -8.6197026
310 -38.9602496  -5.4488792
330  23.6905025  -4.8143320
331  22.2602062  -3.0698952
332   9.0395271  -0.2721709
333  16.8404333  -0.2236248
334  -7.2325803   1.0745763
335  -0.3336936 -10.7521594
337  34.8903534   8.6282835
349 -25.2101138   1.1734148
350 -13.0699598   6.6142055
351   4.5778364  -3.0152574
352  20.8635944   3.5360130
369   3.2754532   0.8722166
370 -25.6128737   4.8224653
371   0.8070401  -0.9881551
372  12.3145406   1.2840295

Nilai-nilai ini adalah komponen varians dari subjek. Setiap baris berhubungan dengan satu subjek. Secara inheren rata-rata setiap kolom adalah nol karena nilainya sesuai dengan perbedaan dalam kaitannya dengan efek tetap.

> colMeans(ranef(fm1)$Subject)
  (Intercept)          Days 
 4.092529e-13 -2.000283e-13 

Perhatikan bahwa nilai-nilai ini sama dengan nol, penyimpangan disebabkan oleh ketidaktepatan representasi angka floating point.

Hasil coef(fm1)$Subjectmemasukkan efek tetap ke dalam efek acak, yaitu, koefisien efek tetap ditambahkan ke efek acak. Hasilnya adalah penyadapan individu dan lereng.

Sven Hohenstein
sumber
Terima kasih atas jawabannya, yang menjelaskan bagaimana masing-masing koefisien dihitung. Namun satu pertanyaan lebih lanjut, ketika paragraf di atas menyatakan bahwa mereka disesuaikan dengan residu, apakah ini sama dengan memasukkan efek acak dalam koefisien atau apakah itu merupakan masalah yang terpisah?
Andrews
Anda menyatakan bahwa coef (ringkasan (fm1)) [, "Perkirakan"] menghasilkan rata-rata dari semua mata pelajaran. Saya menganggap itu menyiratkan mencegat adalah nilai rata-rata "Reaksi", tetapi 'rata-rata (sleepstudy $ Reaction) = 298.5079'. Ini adalah interpretasi dari intersep dalam regresi linier dan saya mencoba untuk memahami koefisien dalam model efek campuran dan saya berjuang untuk mendapatkan sesuatu (seperti ini untuk dijumlahkan). Mengapa intersep 298.5 tidak?
svannoy
@svannoy Perhatikan bahwa intersep adalah nilai estimasi variabel dependen ketika semua kovariat sama dengan nol. Di sini, Daystidak berpusat pada nilai tengah, dan karena itu intersep model lebih rendah dari nilai rata-rata Reaction. Selain itu, garis regresi adalah kecocokan linear terbaik. Oleh karena itu, pengamatan tidak harus pada garis ini.
Sven Hohenstein
@SvenHohenstein terima kasih, untuk mengklarifikasi itu. Apakah akurat untuk mengatakan bahwa dalam regresi OLS hanya dengan variabel prediktor kategori tunggal dan pengkodean deviasi (contr.sum ()) intersep tepat adalah grand mean; sedangkan dalam regresi RC dengan model intersep acak intersep adalah estimasi mean rata-rata?
svannoy
@svannoy Ya, dengan penyimpangan kode intersep mencerminkan Grand Mean dalam regresi OLS. Dalam model campuran linier, intersep memang merupakan Grand Mean yang diperkirakan.
Sven Hohenstein