gpt4 book ai didi

r - 调解 R 包 p 值 : workaround to get more significant digits?

转载 作者:行者123 更新时间:2023-12-04 15:13:12 30 4
gpt4 key购买 nike

我正在运行多项中介分析,需要针对多重比较进行更正。但是,中介包提供的 p 值似乎已经四舍五入了,正如@Roland 在这个问题上的非常有用的回答中所观察到的那样:

R mediation package : digit behind comma

有没有人找到解决方法来实际为 pvalues 提取更多有效数字?

最佳答案

这些是用 2 位数字打印的,因为这是所有方法计算的。这是一项随机分析,因此 p 值只是 50 个(在引用答案中)满足某些条件的模拟的分数。如果您想要更多位数,则需要将 sims 设置为比 50 大得多的值。之后,您可以使用与该帖子中相同的技术更改位数设置,或更简单地如下:

  1. 执行这个:

    print.summary.mediate <- 调解:::print.summary.mediate

  2. 使用 fix(print.summary.mediate) 编辑源代码,并更改行

    printCoefmat(smat, digits = 3)

到您想要的任何所需位数。我选择了 6。

然后运行代码:

data(jobs)
b <- lm(job_seek ~ treat + econ_hard + sex + age, data=jobs)
c <- lm(depress2 ~ treat + job_seek + econ_hard + sex + age, data=jobs)

contcont <- mediate(b, c, sims=1000, treat="treat", mediator="job_seek")
summary(contcont)

我得到了这个输出:

Causal Mediation Analysis 

Quasi-Bayesian Confidence Intervals

Estimate 95% CI Lower 95% CI Upper p-value
ACME -0.0166933 -0.0404983 0.00735 0.168
ADE -0.0412011 -0.1278011 0.04465 0.348
Total Effect -0.0578944 -0.1449898 0.02716 0.196
Prop. Mediated 0.2313315 -1.7557486 1.89099 0.288

Sample Size Used: 899


Simulations: 1000

您只能在 p 值上看到 3 位数字,因为这就是您通过 1000 次模拟得到的全部结果:n/1000 始终有 3 位数字。如果您选择 sims 不是整数,你会看到更多的数字:但后面的数字将毫无值(value),除了像 123/456 这样的分数没有很好的小数扩展这一事实之外,它们实际上没有任何意义。

你的会有所不同,因为它是随机分析。

关于r - 调解 R 包 p 值 : workaround to get more significant digits?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64829727/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com