Я пытаюсь предсказать вероятность типа ответа (4 уровня: правильный, неправильный, преждевременный, упущение). У меня есть 4 переменные предиктора: Испытания (непрерывные переменные, варьируется от субъекта к предмету, но около ~ 1: 80), Группа (категориальная переменная, 3 уровня: «HI», «MID», «LI») и ITI (категориальная переменная, 4 уровня: «3000», «5000», «7000», «9000»).
Мне кажется, я понимаю, как смотреть на основные эффекты и взаимодействия, но я получаю некоторые странные коэффициенты в терминах взаимодействия,которые на самом деле не отражают данные, поэтому мне интересно, делаю ли я что-то не так.
Мои данные
mydat1$rat_ID<- as.factor(mydat1$rat_ID)
mydat1$response_type <- factor(mydat1$response_type, levels = c("correct", "incorrect", "premature", "omission"))
mydat1$response_type2 <- relevel(mydat1$response_type, ref = "incorrect")
mydat1$ITI <- factor(mydat1$ITI, levels = c("3000", "5000", "7000", "9000"))
mydat1$impulsivity <- factor(mydat1$impulsivity, levels = c("HI", "MID", "LI"))
#this is what my data looks like
head(mydat1)
Corr Prem Omiss Incorr ITI rat_ID Trials response_type impulsivity response_type2
1 1 0 0 0 3000 1 1 correct MID correct
2 0 0 0 1 3000 1 2 incorrect MID incorrect
3 0 0 1 0 3000 1 3 omission MID omission
4 1 0 0 0 3000 1 4 correct MID correct
5 0 0 1 0 3000 1 5 omission MID omission
6 0 0 0 1 3000 1 6 incorrect MID incorrect
str(mydat1)
'data.frame': 6414 obs. of 10 variables:
$ Corr : num 1 0 0 1 0 0 0 0 0 0 ...
$ Prem : num 0 0 0 0 0 0 0 0 0 0 ...
$ Omiss : num 0 0 1 0 1 0 0 1 1 1 ...
$ Incorr : num 0 1 0 0 0 1 1 0 0 0 ...
$ ITI : Factor w/ 4 levels "3000","5000",..: 1 1 1 1 1 1 1 1 1 1 ...
$ rat_ID : Factor w/ 24 levels "1","2","3","4",..: 1 1 1 1 1 1 1 1 1 1 ...
$ Trials : int 1 2 3 4 5 6 7 8 9 10 ...
$ response_type : Factor w/ 4 levels "correct","incorrect",..: 1 2 4 1 4 2 2 4 4 4 ...
$ impulsivity : Factor w/ 3 levels "HI","MID","LI": 2 2 2 2 2 2 2 2 2 2 ...
$ response_type2: Factor w/ 4 levels "incorrect","correct",..: 2 1 4 2 4 1 1 4 4 4 ...
Затем я запускаю свою полиномиальную логистическую регрессию
test <- multinom(response_type2 ~ Trials*ITI*impulsivity, data = mydat1)
#coefficients of the logistic regression
summary(test)
z <- summary(test)$coefficients/summary(test)$standard.errors
##p values of the coefficients
p <- (1 - pnorm(abs(z), 0, 1)) * 2
p
например, вывод здесь LI сравнивается с HI и ITI9000 с ITI3000
Coefficients:
Trials:ITI9000:impulsivityLI
correct 0.016879271
premature 0.046295381
omission 0.003091414
Моя проблема в том, что коэффициенты взаимодействий не отражают данные, потому что, например, это не правда, что с увеличениемв испытаниях для LIvsHI в ITI9000vsITI3000 выше вероятность преждевременного ответа по сравнению с неправильным ответом.
Может кто-нибудь сказать мне, следует ли мне что-то добавить к этой модели?