其他人解释发生什么事,如何解决它,我只是想说明为什么它是一个理想的默认值。
考虑下面的示例代码:
mydata <- data.frame(
x = factor(rep(c(0:5,0:5), c(0,5,10,20,10,5,5,10,20,10,5,0))),
sex = rep(c('F','M'), each=50))
mydata.males <- mydata[ mydata$sex=='M', ]
mydata.males.dropped <- droplevels(mydata.males)
mydata.females <- mydata[ mydata$sex=='F', ]
mydata.females.dropped <- droplevels(mydata.females)
par(mfcol=c(2,2))
barplot(table(mydata.males$x), main='Male', sub='Default')
barplot(table(mydata.females$x), main='Female', sub='Default')
barplot(table(mydata.males.dropped$x), main='Male', sub='Drop')
barplot(table(mydata.females.dropped$x), main='Female', sub='Drop')
将会产生这样的情节:
现在,这是更有意义的比较,2个地块在左边?或右边的2个地块?
而不是放弃未使用的水平,可能会更好地重新考虑你在做什么。如果主要目标是获取x的数量,那么您可以使用sum
而不是子集并获取摘要。一个情节对你已经被迫成为单一价值的变量有多有意义?
照顾提供一个可重复的例子,以避免从外面猜测? – 2011-06-16 18:52:09