Jadi data kami disusun sebagai berikut:
Kita punya peserta, masing-masing peserta dapat dikategorikan menjadi 3 kelompok ( G ), dan untuk setiap peserta yang kami miliki sampel variabel kontinu. Dan kami mencoba memprediksi nilai yang 0 atau 1.
Bagaimana kita menggunakan matlab untuk menguji interaksi antara variabel kontinu dan variabel kategori dalam memprediksi nilai-nilai ini?
logistic
matlab
interaction
mpacer
sumber
sumber
Jawaban:
Cara termudah, IMO, adalah membangun sendiri matriks desain, sepertix (kontinu) dan g (kategorikal, dengan tiga tingkat tidak teratur, katakanlah g= 1 , 2 , 3 ). Menggunakan notasi Wilkinson, kita akan menulis model ini sebagai
glmfit
menerima matriks nilai mentah (yang diamati) atau matriks desain. Pengkodean istilah interaksi tidak terlalu sulit setelah Anda menulis model lengkap. Katakanlah kita memiliki dua prediktor,y ~ x + g + x:g
, mengabaikan sisi kiri (untuk hasil binomial, kita akan menggunakan fungsi tautan logit). Kami hanya membutuhkan dua vektor dummy untuk mengkodekang
level (sebagai ada / tidak ada untuk pengamatan tertentu), jadi kami akan memiliki 5 koefisien regresi, ditambah istilah intersepsi. Ini dapat diringkas sebagaidimanasaya singkatan dari matriks indikator yang mengkode tingkat g .
Di Matlab, menggunakan contoh online, saya akan lakukan sebagai berikut:
Saya tidak menyertakan kolom yang untuk intersep karena disertakan secara default. Matriks desain terlihat seperti
dan Anda dapat melihat bahwa istilah interaksi hanya dikodekan sebagai produk dari
x
dengan kolom yang sesuai darig
(g = 2 dan g = 3, karena kita tidak memerlukan level pertama).Hasilnya diberikan di bawah ini, sebagai koefisien, kesalahan standar, statistik dan nilai-p (dari
stats
struktur):Sekarang, menguji interaksi dapat dilakukan dengan menghitung perbedaan penyimpangan dari model penuh di atas dan model yang dikurangi (menghilangkan istilah interaksi, yaitu dua kolom terakhir dari matriks desain). Ini dapat dilakukan secara manual, atau menggunakan
lratiotest
fungsi yang menyediakan uji hipotesis Likelihood ratio. Penyimpangan untuk model lengkap adalah 4.3122 (dev
), sedangkan untuk model tanpa interaksi adalah 6.4200 (saya menggunakanglmfit(X(:,1:3), [y n], 'binomial', 'link', 'probit');
), dan uji LR terkait memiliki dua derajat kebebasan (perbedaan dalam jumlah parameter antara kedua model). Karena penyimpangan skala hanya dua kali log-kemungkinan untuk GLM, kita bisa menggunakandi mana statistik didistribusikan sebagai aχ2 dengan 2 df (nilai kritisnya adalah 5.9915, lihat
chi2inv(0.95, 2)
). Keluaran menunjukkan hasil yang tidak signifikan: Kami tidak dapat menyimpulkan adanya interaksi antarax
dang
dalam sampel yang diamati.Saya kira Anda dapat menyelesaikan langkah-langkah di atas dalam fungsi pilihan Anda yang nyaman. (Perhatikan bahwa tes LR dapat dilakukan dengan tangan dalam beberapa perintah!)
Saya memeriksa hasil tersebut terhadap keluaran R, yang diberikan selanjutnya.
Berikut adalah kode R:
Inilah hasilnya, untuk koefisien dalam model lengkap,
Untuk perbandingan dua model bersarang, saya menggunakan perintah berikut:
yang menghasilkan "tabel penyimpangan" berikut:
sumber