我希望使用beanplot来显示分类预测变量中4个增量的视觉比较,并根据响应变量绘制。我的问题是其中一个增量是一个充满零的向量,所以可以理解,beanplot例程的shapiro.test阶段将无法正常工作。
(这是我得到的错误)
Error in shapiro.test(x) : all 'x' values are identical
有没有办法可以绕过这个,并说如果有一个零向量然后对该增量不做任何操作并移动到下一个以便我的绘图在x轴上以4个增量结束,而3个豆图仅用于向量包含值> 0?
的增量非常感谢你的帮助。
一切顺利,
贝克斯
答案 0 :(得分:1)
我猜测问题是当一个类别的var
为0时。您可以测试这种情况并将该组的值设置为NA。这应该适用于beanplot。首先,一些测试数据
dd<-data.frame(
cat =sample(letters[1:5], 50, replace=T),
val = runif(50)
)
dd$val[dd$cat=="c"]<-0
现在数据修复和绘图代码
library(beanplot)
catvar <- with(dd, tapply(val, cat, var))
if(any(catvar==0)) {
dd$val[dd$cat %in% names(catvar[catvar==0])] <- NA
}
beanplot(val~cat, dd)
并生成诸如
之类的情节