【发布时间】:2020-10-28 15:50:29
【问题描述】:
我正在尝试定义一个函数,该函数可用于对整个数据集的多个部分进行统计测试,而无需手动输入多行相同的代码。
我原来的函数是这样的;
#Mann-Whitney test for non-normal continuous variables
MW_fn = function (var) {
wilcox.test(x = df %>% filter(Diagnosis == "Control") %>% select(var) %>% pull(), y = df %>% filter(Diagnosis == "Schizophrenia") %>% select(var) %>% pull())}
但是当我运行它时它会抛出一个“找不到对象”的错误。
当我使用一个变量(cesdhs)在用户定义的函数之外运行代码时,它运行良好并给出下面的结果,看起来不错..
wilcox.test(x = df %>% filter(Diagnosis == "Control") %>% select(cesdhs) %>% pull(), y = df %>% filter(Diagnosis == "Schizophrenia") %>% select(cesdhs) %>% pull())
具有连续性校正的 Wilcoxon 秩和检验
数据:df %>% filter(Diagnosis == "Control") %>% select(cesdhs) %>% pull() and df %>% filter(Diagnosis == "Schizophrenia") %>% select( cesdhs) %>% 拉取() W = 6356.5,p 值 = 9.003e-09 备择假设:真实位置偏移不等于0
测试一些不同的东西似乎可以归结为:
test_fn = function (var) {
df %>% select(var)
}
即使变量存在于数据框中也会引发错误。
有什么想法吗?
【问题讨论】:
标签: r