来自数据帧中行值的boxplot

dar*_*d89 2 r ggplot2 lattice reshape

我得到了以下数据框(这里简化):

    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
Run Code Online (Sandbox Code Playgroud)

其中E1 - E5是行号.我想为每行的值创建一个boxplot(甚至更好的小提琴图).我想忽略列ID,并将行ID作为"因子".

像这样的回答: 如何生成boxplot

但使用E1 - E5作为值.正如你可能猜到我是新手融化/演员/重塑.

非常感谢您的帮助

Man*_*món 8

虽然你已经接受了@Chase的答案,但我向你展示了一个更简单的方法:

 boxplot(t(dat))
Run Code Online (Sandbox Code Playgroud)


Cha*_*ase 5

你曾经想过95%的问题.你只是想知道你需要创建一个列row.names().假设您的数据存储在名为data.frame的数据中,这样的事情应该可行dat

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

在此输入图像描述