2011-12-14 22 views
2

我得到以下的數據幀(在此簡化的):箱線圖在一個數據幀

H2475 H2481 H2669 H2843 H2872 H2873 H2881 H2909 
E1 24.470 26.481 15.120 18.490 16.189 11.422 14.886 18.512 
E2 1.016 0.363 0.509 1.190 1.855 0.958 0.771 0.815 
E3 0.671 0.637 0.571 0.447 0.116 0.452 0.403 0.753 
E4 3.448 2.826 2.183 2.607 4.288 2.526 2.820 3.523 
E5 2.548 1.916 1.126 1.553 1.089 1.228 0.887 1.065 

其中,E1 - E5是行號。我想爲每行的值創建boxplot(甚至更好的小提琴情節)。我想忽略列ID,並將行ID作爲「因素」。

事情是這樣的頂端回答: How to generate boxplot

但E1 - E5作爲值。正如你可能猜到的,我是新來融化/施放/重塑。

非常感謝您的幫助

回答

5

您已經通過的方式出現的問題,95%的人認爲。你只是想念你需要創建一個列從row.names()。像這樣的東西應該工作假設你的數據存儲在一個名爲dat

library(ggplot2) 
dat$group <- row.names(dat) 
dat.m <- melt(dat, id.vars = "group") 
ggplot(dat.m, aes(group, value)) + geom_boxplot() 

enter image description here

+1

非常感謝。它的工作原理,我學到了更多的東西;-) – darked89 2011-12-14 20:27:10

8

雖然你已經接受了來自@Chase答案data.frame,我告訴你一個更簡單的方法:

boxplot(t(dat))