2017 年 8 月,REMR 方法学小组推出了一种合并剂量反应数据的新方法,误差元 (REMR)。 新方法推出后,得到了众多学界朋友的支持。 在国际证据合并方法学领域也受到了更大的关注,并获得了良好的学术声誉。 在接下来的几年里,我们一直在推动建立整个剂量反应证据融合方法学生态系统,其中一个重要组成部分就是针对不同统计分析软件开发相应的REMR程序模块。 REMR一开始提供的操作代码非常长、数量多、复杂,而且针对不同数据类型的代码也不同。 例如,二进制结果数据和连续结果数据的编码有很大不同,导致实现起来很困难。 经过REMR方法学组的不懈努力,已经实现了Stata软件REMR程序模块的开发,这将使剂量反应数据合并过程变得简单方便。 经过一个月的反复内部测试,第一个版本于2020年6月1日正式发布。为了方便您使用,本文简单介绍一下REMR模块的操作。
1、程序安装
我们提供两种安装方法。 第一种方法是Stata常用的命令安装方法:
SSC 雷姆尔
第二种方法是手动下载remr包并放置到Stata安装路径下,如:D:\Files(x86)\\ado\base
程序包及下载地址:
(图片中间给出了主程序和辅助程序的下载链接)
2. 程序语法和功能介绍
语法是一个非常可怕的词。 不管是什么语言,说到语法,我曾经的挣扎依然历历在目。 然而,REMR 语法非常简单。 开发它的目的是为了方便大家使用,而不是为了忽悠大家。 我们提供两种数据模式:
A:利用效应量和标准误进行分析; B:使用四格表数据进行分析。
2.1 效应量和标准误的形式
remr ES se 剂量,id() ()
主程序命令是“remr”,它让Stata知道我们要使用“remr”程序来做事。 然后存在三个变量:效应大小、效应大小的标准误差和剂量。 这里的效应大小并不简单,可以是OR、RR、Mean、MD、SMD,当然还有/。 效应大小se的标准误差是指上述效应大小的标准误差,用于计算权重,通过逆方差进行加权。 剂量表示每项研究中每个剂量层对应的平均剂量。 “id”对应于纳入的研究并对应于每项研究内的剂量分层。 值得注意的是,它是从0开始的,即程序将0识别为。
是可选功能,包括是否集中、指定组合结果(默认浮动效果,即不设置)、使用线性还是非线性模型(默认线性)、呈现哪些结果、呈现什么样的图形等对于原来不一致的情况,需要指定居中,(#),“#”代表居中的起始值,即所有的东西都“转化”为这个值。 对于需要非线性拟合的数据,使用rcs(#)来指定。 “#”用于指定要插入的随机节点的数量。 最少数量为3; 也可以用knots()指定,直接指定固定节点的位置。 ,如结(5 25 50 75 95)。 请注意,rcs 指定随机节点,knots 指定固定节点。 如果需要呈现表格结果,可以使用表格选项,它将呈现每个剂量对效应大小的结果; 如果需要绘制剂量趋势图,命令默认为普通图,也可以指定bplot来绘制气泡图。
2.2 四格表数据形式
remr 病例总剂量,id() ()
同样,首先指定主程序命令是“remr”。 其次,指定使用的数据:病例总数。 分别表示发生例数、未发生例数、总例数。 请注意,这是每项研究中每个剂量分层对应的发生病例数、未发生病例数和病例总数。 该方法的目的是促进使用随机对照试验的数据进行剂量反应荟萃分析。 其余语法与2.1部分一致,因此不再给出详细信息。
3、数据存储
remr提供数据存储功能,方便随时检索数据。 这个功能对大多数研究人员来说没什么用,但对方法学家来说却很有用。 例如,在进行模拟研究时,需要回忆并保存每次模拟的结果。 数据存储功能将大大节省能源。 我们提供三个数据矩阵:1)结果矩阵:剂量-效应-间隔; 2)回归系数矩阵:beta-; 3)剂量矩阵(无关,下一版本考虑删除)。 运行remr程序后,可以使用该函数调出数据。 例如,第一和第二矩阵可以如下调用:
垫列表 r()
垫列表 r(型号)
4. 案例展示
我们用一个经典的例子来演示remr的操作。 本例探讨了 BMI 与肾癌风险之间的剂量反应关系,共纳入 8 项研究。 使用命令下载数据:
使用,清除
下载完成后,Stata数据窗口会加载相关数据,界面如下:
对应变量的含义为:id代表纳入的study id,从1到8,分别代表第1个到第8个study; 变量指第一作者和出版年份; 变量表示剂量分层的范围,bmi代表每个分层。 平均剂量有问题,应该是logrr),代表对数变换后效应大小的标准误差。
此示例数据提供了第二部分中介绍的两种类型的数据。 我们首先使用效应大小/标准误差数据进行演示。 首先检查每项研究中的剂量是否按升序排列。 如果没有,请按照以下代码排序:
排序 ID 体重指数
然后生成变量:
id: gen cat=_n - 1
接下来,您可以进行数据分析。 首先,使用固定节点结来设置样条函数:
remr logor bmi, id(id) cat(cat) 结(25 50 75) 表 bplot
当然,你也可以设置带有随机节点的样条函数:
remr logor bmi, id(id) cat(cat) rcs(3) 表 bplot
基本结果如下:
这里给出了两个表。 第一个表显示数据类型、拟合模型(非线性)、节点数量 (3)、节点分位数 (25% 50% 75%) 和研究个体。 、R-等重要信息,此表是默认输出。 第二个表显示了详细的回归分析结果。 值得注意的是,第二个表需要调用“table”选项。 同时,第二个表给出了每个剂量对应的效应大小的结果:
命令中我们选择bplot来绘制剂量趋势图,如下:
我们用四格表数据来演示。 同样,首先检查每项研究中的剂量是否按升序排列。 如果没有,请按照以下代码排序:
排序 ID 体重指数
然后生成变量:
id: gen cat=_n - 1
然后进行数据分析并设置固定节点结的样条函数:
remr 案例 n bmi,id(id) cat(cat) 结(25 50 75) 表 bplot
设置具有随机节点的样条线:
remr logor bmi, id(id) cat(cat) rcs(3) 表 bplot
请注意,对于观察性研究,四条形表数据未针对变量进行调整,因此结果会受到许多混杂因素的影响。 因此,我们建议对于观察性研究,应采用校正效应量和标准误法进行分析; 对于随机对照试验,可以使用四格表数据进行分析。
5. 亚组分析功能
子组分析是remr命令的一个特殊功能,因此将单独介绍。 使用 if 选项可以进行子组分析。 假设指定子组的变量为年龄,年龄=1表示0-18岁,年龄=2表示19-65岁,年龄=3表示66岁及以上。 我们现在希望使用以下命令查看成年人口的结果:
remr logor bmi 如果年龄==2,id(id) cat(cat) 结(25 50 75) 表 bplot