如何为箱图创建适当的数据集

时间:2015-06-23 14:36:50

标签: r

我无法创建数据集的正确箱线图。这个平台上的所有解决方案都不起作用,因为它们的数据集看起来与变量相互不同。

所以我想问一下:如果我的数据集只包含3个变量及其测量值在3列中,我该如何格式化。在这里的boxplot示例中,他们绘制了一个变量与另一个变量,但这不是正确的情况吗?

使用boxplot(数据)给出了3个箱图。但我想在每个箱图上显示 MEAN 以及人口规模。我不知道如何使用解决方案,因为它们都是关于ggplot2或boxplot的变量相互对立。

我知道这一定很简单,但我认为我是用不好的方法绘制箱图,这就是为什么这个网站上的解决方案不起作用?

数据:

结构(清单(休息= c)(3.479386607,3.478445796,2.52227462, 1.726115552,3.917693859,2.300840122),Peat = c(16.79515746, 22.76673699,24.43289941,15.64168939,31.60459098,16.2369787 ),Top.culture = c(8.288,8.732,5.199,6.539,3.248,10.156))。。Name = c(" Rest", " Peat"," Top.culture"),row.names = c(NA,6L),class =" data.frame")

1 个答案:

答案 0 :(得分:0)

如果文本注释是'显示平均值和人口大小'的意思那么:

boxplot(dat)
text(1:3, 12.5, paste( "Mean= ",round(sapply(dat,mean, na.rm=TRUE), 2), 
                       "\n N= ", 
                        sapply(dat, function(x) length( x[!is.na(x)] ) )
      )              )

enter image description here

这使用了来自其他(重复)问题的更复杂的数据对象。

dat <- structure(list(Rest = c(3.479386607, 3.478445796, 2.52227462, 1.726115552, 3.917693859, 2.300840122, 2.326307503, 2.344828287, 4.654278623, 3.68669447, 3.343706863, 0.712228306, 2.735897248, 1.936723375, 2.724260325, 2.069633651, 1.741484154, 2.304391217, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA), Peat = c(16.79515746, 22.76673699, 24.43289941, 15.64168939, 31.60459098, 16.2369787, 32.63285246, 35.91852324, 19.27802839, 21.78974576, 30.39119451, 35.4846573, 42.21807817, 42.00913743, 40.96996704, 19.85075354, 17.247096, 22.81689524, 43.35990368, 37.57273508, 23.76889902, 38.34604591, 20.98376674, 16.44173119, 17.27639888, NA, NA, NA, NA, NA, NA), Top.culture = c(8.288, 8.732, 5.199, 6.539, 3.248, 10.156, 3.436, 5.584, 4.483, 2.087, 3.28, 2.71, 2.196, 4.971, 4.475, 6.361, 5.49, 9.085, 3.52, 5.772, 9.308, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA)), .Names = c("Rest", "Peat", "Top.culture" ), class = "data.frame", row.names = c(NA, -31L))