2

我有几项研究被分析为具有二项式结果的混合模型,并且正在尝试对这些研究进行荟萃分析。例如,一项研究使用了以下分析:

glmer(outcome ~ condition + (1|ID) + (1|week), data = d, family=binomial)

要进行元分析,我相信我需要运行rma.glmm()metafor 包中的函数。rma.glmm()需要指定的参数ai, bi, ci, 和di(2x2 table data),但是 glmer 的输出只给出yi; 使用数据的实际描述(忽略所有聚类)来填充这些参数似乎违反直觉。是否可以从混合模型生成计数的 2x2 表数据?

或者,是否可以在没有 2x2 表的情况下运行具有效应大小和方差的荟萃分析?根据我的发现,这对于rma.uni()(对于线性模型)来说是可能的,但对于广义混合模型来说却不是。

数据和分析的微小子集:

d <- structure(list(ID = c("634", "d06", "593", "f6a", "288", "d6a", 
"35e", "e19", "97c", "537", "28e", "f4a", "503", "dc4", "1a2", 
"c14", "142", "f74", "b7f", "cf7", "ec8", "19e", "ba5", "baa", 
"9f6", "4ac", "326", "975", "0fc", "a1d", "fd4", "ab6", "8dc", 
"35d", "11f", "52e", "416", "b74", "fef", "6d1", "151", "a37", 
"070", "364", "773", "22a", "6dc", "b4e", "16e", "5a3", "fba", 
"21a", "d24", "b3b", "979", "9bc", "d51", "d62", "1dc", "d7f", 
"7de", "e59", "f0e", "70c", "ef5", "275", "c77", "103", "db7", 
"4c3", "c26", "0c2", "bda", "726", "9ac", "645", "0fd", "dd7", 
"8d2", "1da", "525", "c5f", "bc7", "caf", "fbb", "034", "adc", 
"f3e", "2c2", "8b8"), condition = structure(c(1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L), .Label = c("Control", "Note", "Pre Intervention"
), class = "factor"), outcome = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 
0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 
0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 
0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 
1L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 0L, 0L, 0L, 
0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 
0L, 0L, 0L), week = structure(c(27L, 26L, 26L, 27L, 29L, 25L, 
27L, 27L, 27L, 26L, 25L, 25L, 26L, 26L, 25L, 28L, 26L, 26L, 28L, 
28L, 26L, 27L, 25L, 27L, 27L, 25L, 27L, 28L, 26L, 25L, 28L, 29L, 
27L, 30L, 25L, 30L, 28L, 25L, 30L, 30L, 27L, 26L, 26L, 28L, 28L, 
27L, 27L, 28L, 28L, 26L, 25L, 28L, 27L, 26L, 25L, 27L, 29L, 26L, 
30L, 28L, 21L, 22L, 16L, 18L, 5L, 15L, 24L, 7L, 8L, 5L, 17L, 
19L, 12L, 6L, 9L, 14L, 10L, 13L, 2L, 3L, 3L, 15L, 11L, 20L, 1L, 
4L, 23L, 8L, 16L, 12L), .Label = c("2017-14", "2017-18", "2017-20", 
"2017-21", "2017-29", "2017-38", "2017-39", "2017-44", "2017-45", 
"2017-46", "2017-48", "2017-49", "2018-02", "2018-04", "2018-05", 
"2018-06", "2018-07", "2018-08", "2018-09", "2018-10", "2018-11", 
"2018-12", "2018-14", "2018-16", "2018-18", "2018-19", "2018-20", 
"2018-21", "2018-22", "2018-23"), class = "factor")), row.names = c(NA, 
-90L), class = "data.frame")
library(lme4)

library(metafor)

summary(glmer(outcome ~ condition + (1|ID) + (1|week), data = d, family=binomial)) 
4

0 回答 0