0

我有两个要比较的变量:一个包含年龄变量(连续),另一个包含中风状态变量(有或没有中风,因素)。我可以愉快地使用

wilcox.test (allcoding$age~allcoding$stroketia)

但是,我很难做到这一点,sjPlot因为它希望两者都是数字

sjt.mwu(mwu(allcoding$age, allcoding$stroketia))
Performing Mann-Whitney-U-Test...
---------------------------------
showing statistics between groups (x|y)
Error in wilcox.test.default(xsub, ysub.n, paired = TRUE) :
 'y' must be numeric

我该如何做相当于"~"in sjPlot 而不是","

谢谢您的帮助

4

1 回答 1

0

当分组变量的类型为 时,我只能重现此错误character

library(sjmisc)
library(sjPlot)
a <- runif(50, 10, 30)
b <- sample(LETTERS[1:3], size = 50, replace = T)
# throws an error
mwu(a, b)

但是,当您强制考虑因素时,它会起作用:

mwu(a, as.factor(b))
sjt.mwu(mwu(a, as.factor(b)))

你能试试这个吗?

于 2016-04-13T16:46:15.957 回答