【发布时间】:2018-07-25 10:48:54
【问题描述】:
这是我的数据
mydat=structure(list(id = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), group = c(1L,
1L, 1L, 1L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 1L, 1L, 1L, 1L, 2L,
2L, 2L, 2L, 3L, 3L, 3L, 3L), var = c(23L, 24L, 24L, 23L, 23L,
24L, 24L, 23L, 23L, 24L, 24L, 23L, 23L, 24L, 24L, 23L, 23L, 24L,
24L, 23L, 23L, 24L, 24L, 23L)), .Names = c("id", "group", "var"
), class = "data.frame", row.names = c(NA, -24L))
我想加入两个表。 id 是标识符。
library(tidyverse)
mdyat %>%
with(.,pairwise.wilcox.test(var,id, group, exact =F)) %>%
broom::tidy() %>%
complete(id,group) %>%
left_join(mydat %>%
group_by(id,group)) %>%
summarise_all(c("mean", "sd", "median"))
by=c("id,group")
并得到错误
Error in match.arg(p.adjust.method) :
'arg' must be NULL or a character vector
如何做到这一点,这个脚本分别为每个标识符执行 IE。期望的输出
id mean sd median p.value
1 1 23,5 0.5773503 23,5 NA
1 2 23,5 0.5773503 23,5 1
1 3 23,5 0.5773503 23,5 1
2 1 23,5 0.5773503 23,5 NA
2 2 23,5 0.5773503 23,5 1
2 3 23,5 0.5773503 23,5 1
【问题讨论】:
-
您的错误发生在pairwise.wilcox.test方法中。您刚刚尝试了 with 部分吗?
-
@Roland,我删除它。我不小心
-
@Linus ,这个问题与这个话题有关stackoverflow.com/questions/51495838/…。我该怎么做才能正确?
-
@Linus,我也试过这部分并得到同样的错误
-
pairwise.wilcox.test 将 x= 作为向量和组。之后是 p.value 校正。你交出 3 个变量而不是 2 个