我试图指定catagorical子组,我发现source表明你可以简单地使用这种布局
Name:- sharukh khan
website:- www.google.com
Phone:- 9999999999
Phone:- 8888888888
email:- s@p.com
skype:-
linkedin:-
etc
然而,在我的数据集上,它不起作用,但如果将组转换为excel中的数值,则相同的格式有效。
wilcox.test(growth ~ sugar, data= carbs, subset= sugar %in% c("test", "C"))
任何建议都会很棒。 谢谢!
答案 0 :(得分:2)
令人惊讶的是,你仍然可以看到我删除的评论。我之前发表了两条评论,指出了两个可能的问题。
问题1:
"Control"
中很可能没有"Cue-Lure"
或walking.dat$Application
。我建议你试试
with(walking.dat, unique(Application[Application %in% c("Control", "Cue-Lure")]))
看看你得到了什么。可能你要么得到一个元素,要么什么都没有。
我可以轻松地重建您遇到的错误。考虑内置的R数据集airquality
。
data(airquality)
unique(airquality$Month) ## 5 6 7 8 9
wilcox.test(Ozone ~ Month, data = airquality, subset = Month %in% c(6, 7)) ## fine
wilcox.test(Ozone ~ Month, data = airquality, subset = Month %in% c(1, 7)) ## fail
在第二种情况下,您会收到错误:
Error in wilcox.test.formula(Ozone ~ Month, data = foo, subset = Month %in% :
grouping factor must have exactly 2 levels
因为1不是Month
的可用值。
第2期
如果两个级别都存在,那么我猜您的变量Application
是factor
。检查class(Application)
。从这里可以看出一个因素的问题:
x <- factor(letters[1:4])
x[x %in% c("a", "b")]
#[1] a b
#Levels: a b c d
请注意,%in%
后因子级别会下降。但是,如果你这样做:
x <- as.character(x)
x[x %in% c("a", "b")]
#[1] "a" "b"
虽然您获得了字符,但公式方法会自动将其强制转换为因子。通过这种方式,没有其他未使用的因子水平可能会中断wilcox.test()
的危险。