我有一个编码组ID的变量:
d <- data.frame(group = c(0,1,0,2,1,3,2,0,1,2), x=c(1.2,2.3,3.2,2.1,1.3,1.5,2.3,0.4,1.3,1.7))
当我尝试在ggplot2中使用它制作箱图时,我收到错误
提供给离散比例的连续值
尝试呈现数据时。然后我手动将数据中的至少一个组ID更改为文本,一切正常。
所以,我的问题是:是改变连续变量的一些简单方法,包含有限数量的变量到离散?
答案 0 :(得分:4)
由于您为group
变量提供了一个数字向量,因此这被理解为一个连续变量。您需要将其转换为分类变量。请尝试以下方法:
d <- data.frame(group = as.factor(c(0,1,0,2,1,3,2,0,1,2)), x=c(1.2,2.3,3.2,2.1,1.3,1.5,2.3,0.4,1.3,1.7))
as.factor
函数会将您为组提供的数值向量转换为离散变量。
答案 1 :(得分:4)
这个:
ggplot(d) + geom_boxplot(aes(factor(group), x))
给出以下图