首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如果是,我如何区分结果?

如果是,我如何区分结果?
EN

Stack Overflow用户
提问于 2022-05-06 00:54:19
回答 1查看 42关注 0票数 1

在这段代码中,我想要区分t测试的$p值和Wilicoxon的$p值,我怎么能做到呢?

replicate(1000, ifelse(shapiro.test(rnorm(4))$p.value>=0.05,t.test(rnorm(4), alternative = "two.sided")$p.value, wilcox.test(rnorm(4), mu = 0, alternative = "two.sided")$p.value))

从这段代码中,我将得到t检验和Wilcoxon检验的1000 p值,如果Shapiro-Wilk检验的p值大于0.0 5,我们将得到t检验的p-值,如果它小于0.0 5,我们将得到Wilcoxon检验的p-值,我的q是如何从这1000 p-值中得到t-test的列表或p-值的向量。

EN

回答 1

Stack Overflow用户

发布于 2022-05-06 10:23:35

像这样吗?

代码语言:javascript
运行
复制
library(data.table)
set.seed(1)
df <- data.table(data = rnorm(4000), sample=rep(1:1000, each=4))
result <- df[, .(s=shapiro.test(data)$p.value, 
                 w=wilcox.test(data)$p.value, 
                 t=t.test(data)$p.value), 
             by=.(sample)]
result[, final:=ifelse(s < 0.05, w, t)]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72135046

复制
相关文章

相似问题

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