我对R中的boxplot
函数存在严重问题。boxplot错误标记了图中的中间线。即使平均值是7.2376,在箱线图上它显示在4左右,如下图所示(使用以下代码生成)
DATA <- c(0.59, 1.00, 1.00, 1.04, 1.22, 1.40, 1.72, 1.74, 1.98, 3.44,
3.48, 3.50, 3.53, 3.93, 4.00, 4.33, 4.72, 9.49, 10.80, 11.40,
12.04, 16.98, 20.43, 27.27, 29.91)
> boxplot(DATA)
> mean(DATA) = 7.2376
这让我疯了。它只与这个数据集一起使用。其他数据集,箱形图标记平均值就好了。
非常感谢任何见解。
谢谢。
答案 0 :(得分:11)
我的评论应该是一个答案......
你的混淆与boxplot
功能不同,因为它与盒子图完全一致。 box plot通常只显示五个值:min,1st quartile,median,3rd quartile和max。 (此外,大多数绘图算法会根据某些规则拆分“异常值”。)
因此,框图中的中间线对应于中位数,而不是平均值。
答案 1 :(得分:4)
我必须为这个愚蠢的错误赎回自己。对于那些希望标记均值的人,您可以执行以下操作:
> DATA_mean <- data.frame(Group ="A", Measure = DATA) #Make a data.frame first
> attach(DATA_mean) #Attach the data
> boxplot( Measure ~ Group) #Draw your boxplot as above
> means <- by(Measure, Group, mean) #Calculate mean and assign
> points(1, means, pch = 21, cex =1.5, bg = "blue") #Label mean on boxplot
#The default center is 1 for the boxplots, if you have more than one, it would be 1:2:3...etc
希望这可以帮助别人。这对我来说是一个令人尴尬的错误。是时候睡觉了。
谢谢大家马上纠正我。