我试图创建一些调查数据的简单箱图。
数据 数据是调查数据,每行的响应记录为1-5。
**Example Data**
Race= 2,2,3,2,5
Rating = 1,1,3,5,5
转换为因子
df$Race = factor(DF$Race)
df$Rating = factor(DF$Rating)
分配每个因子变量水平
levels(df$Race) = c("Asian/Pacific Islander", "White" , "American Indian/Eskimo", "Black/African American", "Other","NA")
levels(df$Rating) = c("Poor","Below Avg.","Neutral","Good","Excellent", "NA")
ggplot(df, aes(x=Race, y=Rating)) + geom_boxplot()
使用完整数据我得到这样的结果。 请让我知道为什么这会变得时髦。另外,我如何删除NA?#。我是R的新手。所以如果你看到别的东西我做错了,或者说不好请告诉我!谢谢!
更新 使用评论中提供的@jlhoward代码,我可以生成以下内容 - 但是它们绘制的内容完全相同,而不是绘制" white。"
ggplot(df, aes(x=Race, y=as.numeric(Rating))) + geom_boxplot() +scale_y_continuous(labels=df$Rating,breaks=as.integer(df$Rating))
答案 0 :(得分:0)
如果我理解正确,您希望因子水平(“差”,“低于平均”等)出现在Y轴上,但实际上您希望用数值计算“等级”箱图。那是对的吗?
如果是这种情况,您需要不将“rating”变量转换为一个因子,然后再将其转换为ggplot(保留数字),然后根据y轴进行相应的标记。到你的因子水平。
(一个可重复的例子将有助于更全面地回答这个问题)。