Случайные факторы, которые вызывают у меня проблемы при запуске статистической модели в R - PullRequest
0 голосов
/ 28 февраля 2020

Я моделирую набор данных и запускаю на нем статистический тест. У меня есть случайный фактор (id), который объясняет тот факт, что у каждого участника есть две точки данных. Выборка 1000. Каждые 2-3 раза в итерации 10 не может быть проведен статистический тест (генерируются NaN). Тем не менее, если я удаляю случайный фактор, все работает нормально. Дело в том, что я думаю, что было бы более статистически правильно запускать модель со случайными факторами, поэтому я хотел бы понять, что является источником проблемы. Ниже приведен пример такого случая с выборкой из 100. В первой выборке из 100 случайные факторы не могут быть включены. Во втором примере из 100 они могут. Кто-нибудь может понять, что происходит?

library(data.table)
library(splitstackshape)
library(ordinal)
id=factor(rep(1:50, each=2))
treat <- factor(rep(c(0,1),times=2))
datasocial0 <- data.frame(id,treat)
datasocial0$dispersal <- c(1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 
                          0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 
                          1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
                          0, 0, 0, 0, 0, 0, 0)
datasocial0$sex <- c(0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0,
                    0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1,
                    1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1,
                    1)
datasocial0$risk <- c(3, 7, 2, 9, 1, 6, 2, 6, 3, 7, 3, 9, 4, 9, 3, 9, 4, 7, 5, 7, 2, 6, 1, 7, 4, 9, 4, 8, 4, 7, 6, 9, 1,
                      8, 2, 8, 5, 7, 2, 9, 2, 8, 4, 9, 0, 8, 2, 9, 2, 9, 3, 9, 1, 9, 1, 9, 3, 8, 3, 9, 4, 9, 1, 8, 1, 9, 
                      3, 9, 3, 8, 4, 7, 2, 8, 1, 9, 2, 9, 3, 9, 4, 7, 5, 7, 1, 8, 4, 8, 5, 9, 0, 8, 1, 7, 5, 8, 7, 8, 3,
                      9)
datasocial0$risk <- as.factor(datasocial0$risk)
test0 <- clmm(risk ~ treat + sex + dispersal + sex*dispersal + treat*dispersal + treat*sex + (1 | id), data = datasocial0, Hess=TRUE)
summary(test0)
test00 <- clm(risk ~ treat + sex + dispersal + sex*dispersal + treat*dispersal + treat*sex, data = datasocial0, Hess=TRUE)
summary(test00)

id=factor(rep(1:50, each=2))
treat <- factor(rep(c(0,1),times=2))
datasocial1 <- data.frame(id,treat)
datasocial1$dispersal <- c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 
                           1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                           0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
                           0, 0, 0, 0)
datasocial1$sex <- c(0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 
                     0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 
                     1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1)
datasocial1$risk <- c(3, 9, 2, 8, 1, 8, 1, 7, 4, 8, 5, 8, 4, 7, 2, 7, 3, 7, 2, 8, 3, 9, 4, 8, 4, 8, 1, 6, 4, 8, 2, 9, 2, 7, 
                      4, 8, 7, 6, 3, 9, 3, 8, 6, 8, 5, 8, 3, 9, 2, 8, 4, 6, 4, 8, 3, 7, 4, 7, 3, 9, 4, 9, 3, 5, 3, 9, 3, 9, 
                      4, 9, 3, 6, 1, 7, 4, 7, 4, 8, 2, 7, 3, 9, 3, 9, 4, 7, 2, 7, 4, 8, 3, 7, 3, 9, 4, 9, 4, 7, 2, 9)
datasocial1$risk <- as.factor(datasocial1$risk)
test1 <- clmm(risk ~ treat + sex + dispersal + sex*dispersal + treat*dispersal + treat*sex + (1 | id), data = datasocial1, Hess=TRUE)
summary(test1)
test11 <- clm(risk ~ treat + sex + dispersal + sex*dispersal + treat*dispersal + treat*sex, data = datasocial1, Hess=TRUE)
summary(test11)
...