我面临着一个数据集问题,该数据集具有重叠的因子水平。
我想按因子水平制作时间表,条形图和统计数据 - 但是,我希望因子水平是模棱两可的。这意味着属于多个级别的观测值应在图中多次出现。
以下是我的数据结构的示例:
head <- c("ID","YEAR","BRAZIL","GERMANY","US","FRANCE")
data <- data.frame(matrix(c(1,2000,1,0,0,0,
2,2010,0,1,1,0,
3,2011,0,1,0,0,
4,2012,1,0,0,1,
5,2012,0,1,0,0,
6,2013,0,0,0,1),
nrow=6, ncol=6, byrow=T))
names(data) <- head
显然,一个可能的因子变量qazxsw poi不能以通常的方式创建。这将迫使要素水平明确(在我们的案例中,将有4个级别:巴西,德国,美国和法国):
"COUNTRY"
等等...
data$COUNTRY[data$BRAZIL==1 &
data$GERMANY==0 &
data$US==0 &
data$FRANCE==0] <- "Brazil"
data$COUNTRY[data$BRAZIL==0 &
data$GERMANY==1 &
data$US==0 &
data$FRANCE==0] <- "Germany"
但这不是什么,我想......
我的问题是,只有因子水平是明确无误的,才能通过因子进行绘图。我想生产这样的东西:
factor(data$COUNTRY)
具有属于i因子水平的观察值在图中出现i次。
想法有人吗?
我认为你必须复制那些行来代表每个观察。并删除任何0。
require(ggplot2)
MYPLOT <- qplot(data$YEAR, data$COUNTRY)
MYPLOT + geom_point(aes(size=..count..), stat="bin") + scale_size(range=c(0, 15))