在我的工作中,我同时使用 STATA 和 R。目前我想执行剂量反应荟萃分析并使用 R 中的“dosresmeta”包。使用以下语法:
DRMeta <- dosresmeta(
formula = logRR ~ dose,
type = type,
cases = n_cases,
n = n,
lb = RR_lo,
ub = RR_hi,
id = ID,
data = DRMetaAnalysis
)
但是,在执行此语法时,我遇到了问题。出现错误消息:
Error in if (delta < tol) break : missing value where TRUE/FALSE needed.
出现此错误消息的原因是我缺少变量“n_cases”和“n”的一些值,而作者尚未提供这些值。有趣的是,STATA 不需要这些信息来计算剂量反应荟萃分析。
有没有一种方法可以在 R 中执行分析而不需要“n_cases”和“n”的值?如果我没有给出这些值我该怎么办?
我已经向作者询问了缺失的值,不幸的是没有成功。然而,我需要这些研究来进行剂量反应荟萃分析,所以不能排除它们。
[来自包的作者]
可以选择包含那些未报告病例数或 n 的研究,请查看此处提供的示例(https://alecri.github.io/downloads/codes/missing%20cases%20n.txt )。如您所知,Stata 中的 drmeta 命令也需要此信息(目前不可能不提供)。
错误消息与 log(OR) 协方差的近似值有关。一种选择是将近似方法从默认 (gl) 更改为 Hamling 方法(协方差 =“h”),但研究 ID 17 仍然存在问题。当您在收集的数据中有奇怪的行为时,通常会发生这种情况,因此检查您的数据收集以及数据是否正确输入。如果您仍然有问题,请不要包含有关案例/n 的信息并假设独立性,如上面的链接所述。
希望有帮助, 阿莱西奥