r - 在 R 中分组后,如何为不同的列重复函数?
问题描述
我正在寻找一种有效的方法来为我的数据中的多个列生成输出并将输出放在一个表中。
数据中的列:GROUP、x、n、l、A、B、C、D、E、F、G
目前我的代码如下所示:
stat.test_A <- data %>%
t_test(A ~ GROUP, detailed = TRUE, var.equal = TRUE) %>%
add_significance()
stat.test_A
data %>% cohens_d(A ~ GROUP var.equal = TRUE)
stat.test_B <- data %>%
t_test(B ~ GROUP, detailed = TRUE, var.equal = TRUE) %>%
add_significance()
stat.test_B
data %>% cohens_d(B ~ GROUP var.equal = TRUE)
我想对 A:G 列重复它,然后将输出放在一个大表中。
解决方案
最好创建一个函数来执行此操作
library(rstatix)
library(dplyr)
f1 <- function(dat, col_nm) {
stat_out1 <- dat %>%
t_test(formula =
eval(rlang::expr(!! rlang::ensym(col_nm) ~ GROUP)),
var.equal = TRUE, detailed = TRUE) %>%
add_significance()
stat_out2 <- dat %>%
cohens_d(rlang::expr(!! rlang::ensym(col_nm) ~ GROUP)), var.equal = TRUE)
return(dplyr::lst(stat_out1, stat_out2))
}
然后,我们要么单独调用它
f1(data, A)
f1(data, "A")
或者使用循环
library(purrr)
map(c("A", "B", "C", "D", "E", "F", "G"), ~ f1(data, .x))
推荐阅读
- python-3.x - 在 aws boto3 上传中获取进度回调
- javascript - Including Javascript code from a JSP file
- c - What are the pros and cons of using extern variables in C in production code?
- angular - 为什么模态表中的按钮不起作用?
- phantomjs - phantomjs can't render font-Family
- reactjs - 在 React 路由器 4 中使用函数/类组件和 TypeScript 以编程方式导航
- java - Control order of threads after cyclic barrier has completed its action?
- javascript - How do we reduce nested arrays?
- swift - 如何在另一个控制器之上拥有一个浮动模态控制器并同时与它们交互
- javascript - 'Can't perform a React state update on an unmounted component' ERROR when accessing the context api