Saya punya beberapa pertanyaan tentang spesifikasi dan interpretasi GLMM. 3 pertanyaan pasti statistik dan 2 lebih spesifik tentang R. Saya posting di sini karena pada akhirnya saya pikir masalahnya adalah interpretasi hasil GLMM.
Saat ini saya mencoba untuk menyesuaikan GLMM. Saya menggunakan data sensus AS dari Longitudinal Tract Database . Pengamatan saya adalah trus sensus. Variabel dependen saya adalah jumlah unit rumah kosong dan saya tertarik pada hubungan antara lowongan dan variabel sosial-ekonomi. Contoh di sini sederhana, hanya menggunakan dua efek tetap: persen populasi bukan kulit putih (ras) dan pendapatan rumah tangga rata-rata (kelas), ditambah interaksi mereka. Saya ingin memasukkan dua efek acak bersarang: traktat dalam dekade dan dekade, yaitu (dekade / traktat). Saya mempertimbangkan ini secara acak dalam upaya untuk mengendalikan autokorelasi spasial (yaitu antara traktat) dan temporal (yaitu antara dekade). Namun, saya juga tertarik pada dekade sebagai efek tetap, jadi saya memasukkannya juga sebagai faktor tetap.
Karena variabel independen saya adalah variabel hitung bilangan bulat non-negatif, saya sudah mencoba menyesuaikan poisson dan GLMM binomial negatif. Saya menggunakan log total unit perumahan sebagai offset. Ini berarti koefisien ditafsirkan sebagai efek pada tingkat kekosongan, bukan jumlah total rumah kosong.
Saat ini saya memiliki hasil untuk Poisson dan GLMM binomial negatif yang diperkirakan menggunakan glmer dan glmer.nb dari lme4 . Interpretasi koefisien masuk akal bagi saya berdasarkan pengetahuan saya tentang data dan bidang studi.
Jika Anda ingin data dan skrip ada di Github saya . Script mencakup lebih banyak penyelidikan deskriptif yang saya lakukan sebelum membangun model.
Inilah hasil saya:
Model Poisson
Generalized linear mixed model fit by maximum likelihood (Laplace Approximation) ['glmerMod']
Family: poisson ( log )
Formula: R_VAC ~ decade + P_NONWHT + a_hinc + P_NONWHT * a_hinc + offset(HU_ln) + (1 | decade/TRTID10)
Data: scaled.mydata
AIC BIC logLik deviance df.resid
34520.1 34580.6 -17250.1 34500.1 3132
Scaled residuals:
Min 1Q Median 3Q Max
-2.24211 -0.10799 -0.00722 0.06898 0.68129
Random effects:
Groups Name Variance Std.Dev.
TRTID10:decade (Intercept) 0.4635 0.6808
decade (Intercept) 0.0000 0.0000
Number of obs: 3142, groups: TRTID10:decade, 3142; decade, 5
Fixed effects:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -3.612242 0.028904 -124.98 < 2e-16 ***
decade1980 0.302868 0.040351 7.51 6.1e-14 ***
decade1990 1.088176 0.039931 27.25 < 2e-16 ***
decade2000 1.036382 0.039846 26.01 < 2e-16 ***
decade2010 1.345184 0.039485 34.07 < 2e-16 ***
P_NONWHT 0.175207 0.012982 13.50 < 2e-16 ***
a_hinc -0.235266 0.013291 -17.70 < 2e-16 ***
P_NONWHT:a_hinc 0.093417 0.009876 9.46 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Correlation of Fixed Effects:
(Intr) dc1980 dc1990 dc2000 dc2010 P_NONWHT a_hinc
decade1980 -0.693
decade1990 -0.727 0.501
decade2000 -0.728 0.502 0.530
decade2010 -0.714 0.511 0.517 0.518
P_NONWHT 0.016 0.007 -0.016 -0.015 0.006
a_hinc -0.023 -0.011 0.023 0.022 -0.009 0.221
P_NONWHT:_h 0.155 0.035 -0.134 -0.129 0.003 0.155 -0.233
convergence code: 0
Model failed to converge with max|grad| = 0.00181132 (tol = 0.001, component 1)
Model binomial negatif
Generalized linear mixed model fit by maximum likelihood (Laplace Approximation) ['glmerMod']
Family: Negative Binomial(25181.5) ( log )
Formula: R_VAC ~ decade + P_NONWHT + a_hinc + P_NONWHT * a_hinc + offset(HU_ln) + (1 | decade/TRTID10)
Data: scaled.mydata
AIC BIC logLik deviance df.resid
34522.1 34588.7 -17250.1 34500.1 3131
Scaled residuals:
Min 1Q Median 3Q Max
-2.24213 -0.10816 -0.00724 0.06928 0.68145
Random effects:
Groups Name Variance Std.Dev.
TRTID10:decade (Intercept) 4.635e-01 6.808e-01
decade (Intercept) 1.532e-11 3.914e-06
Number of obs: 3142, groups: TRTID10:decade, 3142; decade, 5
Fixed effects:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -3.612279 0.028946 -124.79 < 2e-16 ***
decade1980 0.302897 0.040392 7.50 6.43e-14 ***
decade1990 1.088211 0.039963 27.23 < 2e-16 ***
decade2000 1.036437 0.039884 25.99 < 2e-16 ***
decade2010 1.345227 0.039518 34.04 < 2e-16 ***
P_NONWHT 0.175216 0.012985 13.49 < 2e-16 ***
a_hinc -0.235274 0.013298 -17.69 < 2e-16 ***
P_NONWHT:a_hinc 0.093417 0.009879 9.46 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Correlation of Fixed Effects:
(Intr) dc1980 dc1990 dc2000 dc2010 P_NONWHT a_hinc
decade1980 -0.693
decade1990 -0.728 0.501
decade2000 -0.728 0.502 0.530
decade2010 -0.715 0.512 0.517 0.518
P_NONWHT 0.016 0.007 -0.016 -0.015 0.006
a_hinc -0.023 -0.011 0.023 0.022 -0.009 0.221
P_NONWHT:_h 0.154 0.035 -0.134 -0.129 0.003 0.155 -0.233
Tes Poisson DHARMa
One-sample Kolmogorov-Smirnov test
data: simulationOutput$scaledResiduals
D = 0.044451, p-value = 8.104e-06
alternative hypothesis: two-sided
DHARMa zero-inflation test via comparison to expected zeros with simulation under H0 = fitted model
data: simulationOutput
ratioObsExp = 1.3666, p-value = 0.159
alternative hypothesis: more
Tes DHARMa binomial negatif
One-sample Kolmogorov-Smirnov test
data: simulationOutput$scaledResiduals
D = 0.04263, p-value = 2.195e-05
alternative hypothesis: two-sided
DHARMa zero-inflation test via comparison to expected zeros with simulation under H0 = fitted model
data: simulationOutput2
ratioObsExp = 1.376, p-value = 0.174
alternative hypothesis: more
Plot DHARMa
Poisson
Binomial negatif
Pertanyaan statistik
Karena saya masih mencari tahu GLMMs saya merasa tidak aman tentang spesifikasi dan interpretasi. Saya punya beberapa pertanyaan:
Tampaknya data saya tidak mendukung menggunakan model Poisson dan oleh karena itu saya lebih baik dengan binomial negatif. Namun, saya secara konsisten mendapatkan peringatan bahwa model binomial negatif saya mencapai batas iterasi mereka, bahkan ketika saya meningkatkan batas maksimum. "Dalam theta.ml (Y, mu, bobot = objek @ resp $ bobot, batas = batas,: batas iterasi tercapai." Ini terjadi menggunakan beberapa spesifikasi yang berbeda (yaitu model minimum dan maksimal untuk efek tetap dan acak). Saya juga telah mencoba menghilangkan outlier dalam ketergantungan saya (kotor, saya tahu!), Karena 1% nilai teratas adalah outlier yang sangat banyak (kisaran 99% bawah 0-1012, atas 1% dari 1013-5213). t tidak memiliki efek pada iterasi dan sangat sedikit berpengaruh pada koefisien juga. Saya tidak memasukkan detail itu di sini. Koefisien antara Poisson dan binomial negatif juga sangat mirip. Apakah kurangnya konvergensi ini merupakan masalah? Apakah model binomial negatif cocok? Saya juga menjalankan model binomial negatif menggunakanAllFit dan tidak semua pengoptimal melempar peringatan ini (bobyqa, Nelder Mead, dan nlminbw tidak).
Varian untuk efek tetap dasawarsa saya secara konsisten sangat rendah atau 0. Saya mengerti ini bisa berarti modelnya terlalu bagus. Mengambil dekade dari efek tetap memang meningkatkan varians efek acak dekade ke 0,2620 dan tidak memiliki banyak efek pada koefisien efek tetap. Apakah ada yang salah dengan membiarkannya? Saya baik-baik saja menafsirkannya sebagai hanya tidak diperlukan untuk menjelaskan antara perbedaan pengamatan.
Apakah hasil ini menunjukkan saya harus mencoba model nol-inflasi? DHARMa tampaknya menyarankan inflasi nol mungkin bukan masalah. Jika Anda pikir saya harus tetap mencoba, lihat di bawah.
Pertanyaan R
Saya akan bersedia untuk mencoba model zero-inflated, tetapi saya tidak yakin paket mana yang menerapkan efek acak untuk Poisson zero-inflated dan GLMM binomial negatif. Saya akan menggunakan glmmADMB untuk membandingkan AIC dengan model zero-inflated, tetapi terbatas pada efek acak tunggal sehingga tidak berfungsi untuk model ini. Saya bisa mencoba MCMCglmm, tetapi saya tidak tahu statistik Bayesian sehingga juga tidak menarik. Ada opsi lain?
Dapatkah saya menampilkan koefisien eksponensial dalam ringkasan (model), atau apakah saya harus melakukannya di luar ringkasan seperti yang saya lakukan di sini?
bobyqa
pengoptimal dan tidak menghasilkan peringatan apa pun. Lalu apa masalahnya? Gunakan saja bobyqa
.
bobyqa
konvergen lebih baik daripada pengoptimal default (dan saya pikir saya membaca di suatu tempat bahwa itu akan menjadi default di versi masa depan lme4
) Saya tidak berpikir Anda perlu khawatir tentang non-konvergensi dengan pengoptimal default jika itu menyatu dengan bobyqa
.
decade
karena keduanya tetap dan acak tidak masuk akal. Baik memilikinya sebagai tetap dan hanya menyertakan(1 | decade:TRTID10)
sebagai acak (yang setara dengan(1 | TRTID10)
mengasumsikan bahwa AndaTRTID10
tidak memiliki level yang sama untuk beberapa dekade yang berbeda), atau menghapusnya dari efek tetap. Dengan hanya 4 level Anda mungkin lebih baik memperbaikinya: rekomendasi yang biasa adalah mencocokkan efek acak jika seseorang memiliki 5 level atau lebih.