Halo Saya memiliki dua masalah yang terdengar seperti kandidat alami untuk model bertingkat / campuran, yang tidak pernah saya gunakan. Yang lebih sederhana, dan yang saya harap coba sebagai pengantar, adalah sebagai berikut: Data tampak seperti banyak baris formulir
x y innergroup outergroup
di mana x adalah kovariat numerik di mana saya ingin mundur y (variabel numerik lain), masing-masing y termasuk dalam kelompok dalam, dan setiap kelompok dalam bersarang dalam outergroup (yaitu, semua y dalam kelompok dalam yang diberikan milik outergroup yang sama) . Sayangnya, innergroup memiliki banyak level (ribuan), dan setiap level memiliki pengamatan y yang relatif sedikit, jadi saya pikir model semacam ini mungkin sesuai. Pertanyaan saya adalah
Bagaimana saya menulis rumus bertingkat seperti ini?
Sekali lmer cocok dengan model, bagaimana cara memprediksinya? Saya telah memasukkan beberapa contoh mainan yang lebih sederhana, tetapi belum menemukan fungsi predict (). Kebanyakan orang tampaknya lebih tertarik pada inferensi daripada prediksi dengan teknik semacam ini. Saya memiliki beberapa juta baris, sehingga perhitungannya mungkin menjadi masalah, tetapi saya selalu dapat memotongnya sesuai kebutuhan.
Saya tidak perlu melakukan yang kedua untuk beberapa waktu, tetapi saya mungkin mulai memikirkannya dan bermain-main dengannya. Saya memiliki data yang sama seperti sebelumnya, tetapi tanpa x, dan y sekarang menjadi variabel binomial dari bentuk . Anda juga menunjukkan banyak penayangan berlebih, bahkan di dalam grup. Sebagian besar tidak lebih dari 2 atau 3 (atau kurang), jadi untuk mendapatkan perkiraan tingkat keberhasilan setiap saya telah menggunakan estimator penyusutan beta-binomial , di mana dandiperkirakan oleh MLE untuk masing-masing kelompok dalam secara terpisah. Ini sudah cukup memadai, tetapi sparsitas data masih mengganggu saya, jadi saya ingin menggunakan semua data yang tersedia. Dari satu perspektif, masalah ini lebih mudah karena tidak ada kovariat, tetapi dari yang lain sifat binomial membuatnya lebih sulit. Apakah ada yang punya panduan level tinggi (atau rendah!)?
Jawaban:
Mengekspresikan faktor hubungan menggunakan rumus R mengikuti dari notasi Wilkinson, di mana '*' menunjukkan persimpangan dan '/' bersarang, tetapi ada beberapa kekhasan dalam cara formula untuk model efek campuran, atau lebih umum efek acak ditangani. Sebagai contoh, dua efek acak silang mungkin direpresentasikan sebagai
(1|x1)+(1|x2)
. Saya telah menafsirkan deskripsi Anda sebagai kasus bersarang, seperti kelas yang bersarang di sekolah (bersarang di negara bagian, dll.), Sehingga rumus dasar denganlmer
akan terlihat seperti (kecuali dinyatakan lain,gaussian
keluarga digunakan secara default):di mana A dan B masing-masing sesuai dengan faktor dalam dan luar. B bersarang di dalam A, dan keduanya diperlakukan sebagai faktor acak. Dalam paket nlme yang lebih lama , ini akan sesuai dengan sesuatu seperti
lme(y ~ x, random=~ 1 | A/B)
. Jika A dianggap sebagai faktor tetap, rumus harus dibacay ~ x + A + (1|A:B)
.Tetapi perlu dicek lebih tepatnya spesifikasi D. Bates untuk paket lme4 , misalnya dalam buku pelajarannya yang akan datang, lme4: Pemodelan Efek Campuran dengan R , atau banyak handout yang tersedia di halaman web yang sama. Secara khusus, ada contoh untuk hubungan bersarang seperti di Fitting Linear Mixed-Effects Model, Paket lme4 di R . Tutorial John Maindonald juga memberikan gambaran yang bagus: The Anatomy of a Analisis Model Campuran, dengan lme4 Paket R . Akhirnya, bagian 3 dari sketsa R pada imlementasi lme4 termasuk contoh analisis struktur bersarang.
Tidak ada(fungsi ini sekarang ada, lihat komentar di bawah), dan Anda harus menghitung sendiri nilai individual yang diprediksi menggunakan efek tetap (lihatpredict()
fungsi di lme4?fixef
) dan acak (lihat?ranef
), tetapi lihat juga utas ini tentang kurangnya fungsi prediksi di lme4 . Anda juga dapat membuat sampel dari distribusi posterior menggunakanmcmcsamp()
fungsi. Namun, kadang-kadang mungkin berbenturan. Lihat milis sig-me untuk informasi lebih lanjut.sumber
lme4
sekarang termasuk fungsi prediksi inside-r.org/packages/cran/lme4/docs/predict.mermodThe ez paket berisi fungsi ezPredict (), yang memperoleh prediksi dari model lmer mana prediksi didasarkan pada efek tetap saja. Ini benar-benar hanya pembungkus pendekatan yang dijelaskan dalam glmm wiki .
sumber
Saya akan menggunakan fungsi "logit.mixed" di Zelig , yang merupakan pembungkus untuk lime4 dan membuatnya sangat nyaman untuk melakukan prediksi dan simulasi.
sumber
Versi pengembangan lme4 memiliki fungsi prediksi bawaan (predict.merMod). Itu dapat ditemukan di https://github.com/lme4/lme4/ .
Kode untuk menginstal "binari pengembangan hampir terbaru dari lme4 r-forge repository" dapat ditemukan di halaman di atas dan adalah:
sumber
predict
telah tersedia selama beberapa tahun sekarang.Stephen Raudenbush memiliki bab buku dalam Buku Pegangan Analisis Multilevel tentang " Banyak Grup Kecil ". Jika Anda hanya tertarik pada efek x pada y dan tidak tertarik pada efek level yang lebih tinggi, sarannya hanyalah memperkirakan model efek tetap (yaitu variabel dummy untuk semua kemungkinan pengelompokan level yang lebih tinggi).
Saya tidak tahu seberapa dapat diterapkannya hal itu terhadap prediksi, tetapi saya akan membayangkan sebagian dari apa yang ditulisnya dapat diterapkan pada apa yang ingin Anda capai.
sumber