在R中按均值(而不是中位数)对箱线图进行排序

11

我有一个简单的箱线图,显示因子“类型”得分的分布:

myDataFrame = data.frame( TYPE=c("a","a","b","b","c","c"), SCORE=c(1,1,2,3,2,1) )
boxplot( SCORE~TYPE, data=myDataFrame )
各种类型按它们在数据框中的顺序显示。 我想通过每种类型中SCORE的平均值对箱线图进行排序(在上面的示例中,顺序应为a、c、b)。
有任何提示?
1个回答

16

这是使用reorder()的工作:

myDataFrame$TYPE <- with(myDataFrame, reorder(TYPE, SCORE, mean))
boxplot( SCORE~TYPE, data=myDataFrame )

这里输入图片描述


谢谢!当TYPE作为字符串(t = "TYPE")时,myDataFrame[,t] <- with(myDataFrame, reorder(myDataFrame[,t], SCORE, mean))非常有效。 - Mulone

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接