Я пытался запустить мета-регрессию в R, используя факторную переменную в качестве единственной модерирующей переменной в модели.Хотя я могу заставить модель работать с использованием таких пакетов, как meta и metafor, ни один из этих пакетов не имеет возможности выбрать вероятность профиля в качестве оценки tau ^ 2 вместо REML или DL.Пакет metaplus был специально разработан для этой цели, но я не могу заставить его работать с факторными переменными.Вот некоторые примеры данных:
trial author year tpos tneg cpos cneg ablat alloc yi vi
1 Aronson 1948 4 119 11 128 44 random -0.8893 0.3256
2 Ferguson 1949 6 300 29 274 55 random -1.5854 0.1946
3 Rosenthal 1960 3 228 11 209 42 random -1.3481 0.4154
4 Hart 1977 62 13536 248 12619 52 random -1.4416 0.0200
5 Frimodt 1973 33 5036 47 5761 13 alternate -0.2175 0.0512
6 Stein 1953 180 1361 372 1079 44 alternate -0.7861 0.0069
7 Vandiviere 1973 8 2537 10 619 19 random -1.6209 0.2230
8 TPT Madras 1980 505 87886 499 87892 13 random 0.0120 0.0040
9 Coetzee 1968 29 7470 45 7232 27 random -0.4694 0.0564
10 Rosenthal 1961 17 1699 65 1600 42 systematic -1.3713 0.0730
11 Comstock 1974 186 50448 141 27197 18 systematic -0.3394 0.0124
12 Comstock 1969 5 2493 3 2338 33 systematic 0.4459 0.5325
13 Comstock 1976 27 16886 29 17825 33 systematic -0.0173 0.0714
yi = суммарный эффект (средняя разница);vi = дисперсия суммарного эффекта
Я хотел бы запустить метарегрессию с выделением в качестве модератора.Среди других попыток вот самый простой код, который я пытался использовать:
res <- metaplus(yi, vi, mods =~ factor(alloc), slab = trial, data = dat)
Ниже приведены сообщения об ошибках, которые я получаю:
Error in rma(yi = yi, sei = sei, mods = as.data.frame(mods), method = "DL") :
Model matrix contains character variables.
И
Error in as.data.frame.default(mods) :
cannot coerce class ‘"formula"’ to a data.frame
Я искал переполнение стека и перекрестную проверку и не смог найти решение.Буду очень признателен за некоторые советы по этому поводу.
Спасибо.