Bagaimana cara saya mendapatkan nilai-p menggunakan multinom
fungsi nnet
paket R
?
Saya memiliki dataset yang terdiri dari "Skor patologi" (Absen, Ringan, Parah) sebagai variabel hasil, dan dua efek utama: Usia (dua faktor: dua puluh / tiga hari) dan Kelompok Perawatan (empat faktor: terinfeksi tanpa ATB; terinfeksi + ATB1; terinfeksi + ATB2; terinfeksi + ATB3).
Pertama saya mencoba menyesuaikan model regresi ordinal, yang tampaknya lebih sesuai mengingat karakteristik variabel dependen saya (ordinal). Namun, asumsi peluang proporsionalitas sangat dilanggar (secara grafis), yang mendorong saya untuk menggunakan model multinomial sebagai gantinya, menggunakan nnet
paket.
Pertama saya memilih level hasil yang perlu saya gunakan sebagai kategori baseline:
Data$Path <- relevel(Data$Path, ref = "Absent")
Kemudian, saya perlu mengatur kategori dasar untuk variabel independen:
Data$Age <- relevel(Data$Age, ref = "Twenty")
Data$Treat <- relevel(Data$Treat, ref="infected without ATB")
Model:
test <- multinom(Path ~ Treat + Age, data = Data)
# weights: 18 (10 variable)
initial value 128.537638
iter 10 value 80.623608
final value 80.619911
converged
Hasil:
Coefficients:
(Intercept) infected+ATB1 infected+ATB2 infected+ATB3 AgeThirty
Moderate -2.238106 -1.1738540 -1.709608 -1.599301 2.684677
Severe -1.544361 -0.8696531 -2.991307 -1.506709 1.810771
Std. Errors:
(Intercept) infected+ATB1 infected+ATB2 infected+ATB3 AgeThirty
Moderate 0.7880046 0.8430368 0.7731359 0.7718480 0.8150993
Severe 0.6110903 0.7574311 1.1486203 0.7504781 0.6607360
Residual Deviance: 161.2398
AIC: 181.2398
pt(abs(summary1$coefficients / summary1$standard.errors), df=nrow(Data)-10, lower=FALSE)
(Intercept) infected+ATB1 infected+ATB2 infected+ATB3 AgeThirty
Moderate 0.002670340 0.08325396 0.014506395 0.02025858 0.0006587898
Severe 0.006433581 0.12665278 0.005216581 0.02352202 0.0035612114
multinom
nnet
'sanova()
fungsi.