2012-03-16 49 views
10

Tôi có một boxplot đơn giản, cho thấy sự phân bố của một số cho yếu tố LOẠI:Sắp xếp boxplot bởi trung bình (và không phải trung bình) trong R

myDataFrame = data.frame(TYPE=c("a","a","b","b","c","c"), SCORE=c(1,1,2,3,2,1)) 
boxplot(SCORE~TYPE, data=myDataFrame) 

Các loại khác nhau được trình bày theo thứ tự chúng có trong dữ liệu khung. Tôi muốn sắp xếp ô vuông theo có nghĩa là của SCORE trong mỗi TYPE (trong ví dụ trên, thứ tự phải là a,c,b).

Bất kỳ gợi ý nào?

Trả lời

14

Đây là một công việc cho reorder():

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

enter image description here

+0

Cảm ơn! Khi TYPE là một chuỗi ('t =" TYPE "'), 'myDataFrame [, t] <- với (myDataFrame, sắp xếp lại (myDataFrame [, t], SCORE, mean))' hoạt động độc đáo. – Mulone

Các vấn đề liên quan