您如何在R中运行合规的平均因果效应CACE分析? 安装eefAnalytics软件包运行因果平均治疗效果输出解释结局是什么?

问题描述

上下文

进行随机对照试验(RCT)时,一些参与者被随机分配到治疗条件中,而其他参与者则被分配到对照组中。但是,并非所有接受治疗的人都可以遵循治疗方案(称为“治疗依从性”)。

根据Sagarin et al. (2014)解决此问题的一种明智方法是使用比较器平均因果效应(CACE),有时也称为局部平均治疗效应(LATE)。根据{{​​3}},“只有当将样本分配给处理时,才对样本的子集进行处理,否则称为编译器”。换句话说,如果您分配给治疗组的一部分参与者没有遵循治疗方案,将会很有用。

问题

您如何在R中运行此分析?

我无法从Google和stackoverflow搜索中找到与此相关的任何精确信息。

尽管我读了很多书,但我仍然无法弄清楚预期的结果是什么。使用CACE时,结果如何?您是否最终获得了针对治疗不依从进行调整的更新分数/数据,而您只需插入常规分析(类似于因子分数)?还是只是得到一些您必须用来做的数字?

我尝试过的事情

Wikipedia似乎为此提供了最方便的功能eefAnalytics package。 “ caceSRTBoot对简单的随机教育试验进行了详细的CACE分析。”它允许通过简单的合规百分比(非常简单和方便)来指定合规性。

但是,caceSRTBoot()在尝试对其进行测试以查看其提供的输出类型时:

install.packages("eefAnalytics")
package ‘eefAnalytics’ is not available (for R version 4.0.2)

# Install the latest version of this package by entering the following in R:
install.packages("eefAnalytics",repos="http://R-Forge.R-project.org")
package ‘eefAnalytics’ is not available (for R version 4.0.2)
Warning in install.packages :
  unable to access index for repository http://R-Forge.R-project.org/bin/windows/contrib/4.0:
  cannot open URL 'http://R-Forge.R-project.org/bin/windows/contrib/4.0/PACKAGES'

根据进一步的调查,I am experiencing some problems installing the eefAnalytics package:“软件包'eefAnalytics'已从CRAN存储库中删除。”

我查看过的其他软件包(例如Cran says123)看起来很复杂,我无法弄清楚(例如,他们没有用于%遵从性的参数,因此我无法使他们的“运行此示例”小部件起作用)。那里还有其他用户友好的软件包吗?在R中还有其他方法可以执行此分析吗?有人会有某种“教程”吗?

相关页面4

解决方法

安装eefAnalytics软件包

我通过package documentationeefAnalytics软件包维护者联系。有人告诉我R很快就会有更新的版本。同时,我能够使用以下方法从CRAN档案中安装软件包的旧版本:

install.packages("https://cran.r-project.org/src/contrib/Archive/eefAnalytics/eefAnalytics_1.0.6.tar.gz",repos = NULL,type = "source")

但是请注意,我必须先分别手动安装软件包geoRmetafor(否则它会引发错误)。

运行因果平均治疗效果

回答问题的第一部分:

您如何在R中运行此分析?

运行example available from documentation for a simple randomised trial,我们得到:

library(eefAnalytics)    
data(mstData)
############# weighted ITT ####################################
caceOutput3 <- caceSRTBoot(Posttest~ Prettest+ Intervention,intervention="Intervention",compliance = "Percentage_Attendance",nBoot=1000,data=mstData)

cace <- caceOutput3$CACE
cace
  Compliance   ES   LB   UB
1       P> 0 0.32 0.04 0.62
2      P> 10 0.32 0.04 0.62
3      P> 20 0.37 0.04 0.72
4      P> 30 0.42 0.05 0.83
5      P> 40 0.47 0.06 0.92
6      P> 50 0.58 0.07 1.18

Complier <- caceOutput3$Compliers
Complier    
        P > 0 P > 10 P > 20 P > 30 P > 40 P > 50 P > 60 P > 70 P > 80 P > 90
pT          1      1   0.87   0.75   0.69   0.55   0.41   0.31   0.25   0.15
pC          0      0   0.00   0.00   0.00   0.00   0.00   0.00   0.00   0.00
P=PT-pC     1      1   0.87   0.75   0.69   0.55   0.41   0.31   0.25   0.15

### visualising CACE effect size

plot(caceOutput3)

enter image description here

输出解释

我从软件包文档中找不到此信息,但从输出中了解到的信息

ITT =意向治疗

ES =效果大小(对冲的 g

LB =(效果大小的置信区间的)下界

UB =上限

pT =治疗组中符合标准者的百分比

pC =对照组中编译器的百分比

P=PT-pC =治疗组中符合标准者的百分比减去对照组中符合标准者的百分比

P > X =遵从百分比大于X(例如50%)的参与者的价值

结局是什么?

要回答问题的第二部分:

使用CACE时,结果如何?

感兴趣的主要结果似乎是调整后的效应大小(Hedge的 g ,与Cohen的 d 相似,但对于小于20的小样本更好。)似乎只能将两个组进行比较,而不能进行更多比较(因为像Cohen的 d 一样,Hedge的 g 只能一次比较两个均值)。

该图非常有用,可以看到效果大小的“改善”与对治疗依从性的增加有关。在此示例中,您看到的是,合规率越高,效果越好,正如预期的那样。