首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用escalc函数?

如何使用escalc函数?
EN

Stack Overflow用户
提问于 2021-03-25 02:36:01
回答 1查看 258关注 0票数 0

我正在使用metafor包进行元分析。我想在使用包时计算效果大小,但遇到了一些麻烦。我正在尝试使用escalc函数来计算效果大小。我有一个包含大约200行数据的文件,其中包含有关控制/测试均值方差和样本数量的数据。对于每一行,我想计算效果大小。现在,我想使用escalc函数来确定使用SMD的效果大小。

我当前的代码如下:

代码语言:javascript
复制
# escalc function
escalc <- function(measure, ai, bi, ci, di, n1i, n2i, x1i, x2i, t1i, t2i, m1i, m2i, sd1i, sd2i, xi, mi, ri, ti, sdi, r2i, ni, yi, vi, sei,
data, slab, subset, include, add=1/2, to="only0", drop00=FALSE, vtype="LS", var.names=c("yi","vi"), add.measure=FALSE, append=TRUE, replace=TRUE, digits, ...)

# apply data and add effect size col to data frame
data$ES <- escalc(measure = SMD, dat$MRE1, dat$MTE2, dat$VRE1, dat$VTE2, dat$NR1, dat$NR2, data = dat)

当我运行这段代码一次似乎没有问题/错误(如果我多次运行代码,它显示“错误:C堆栈使用15925888太接近限制”-不确定这是什么意思),但我的数据帧没有包含每个研究的ES的新列。当我突出显示新变量并按enter键(查看数据)时,它显示为NULL,所以我认为它实际上并没有运行。如何获取效果大小的汇总信息?

我不确定我做错了什么,也不知道如何查看我计算出的效果大小。我一直在阅读metafor文档,但不确定我做错了什么(https://cran.r-project.org/web/packages/metafor/metafor.pdf)。我需要为每篇论文计算escalc吗?任何帮助都是非常感谢的。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-03-26 15:32:36

您应该使用:

代码语言:javascript
复制
dat <- escalc(measure="SMD", m1i=MRE1, m2i=MTE2, sd1i=sqrt(VRE1), sd2i=sqrt(VTE2), n1i=NR1, n2i=NR2, data=dat)

注意,SDs是参数sd1isd2i的输入,所以如果有方差,我们需要取它们的平方根。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66787283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档