R-如何从箱形图中提取和格式化中位数和IQR



我希望从我的Boxplot Stat。

我设法通过以下代码获得了原始结果:

b <- boxplot(len ~ dose, data = ToothGrowth)
b$stats

给我:

      [,1]  [,2]  [,3]
[1,]  4.20 13.60 18.50
[2,]  7.15 16.00 23.45
[3,]  9.85 19.25 25.95
[4,] 13.00 23.45 28.35
[5,] 21.50 27.30 33.90

i可以精确一行或一列分别添加[,1]或[1,],即:我可以提取一组的最小/第1个四分位数/中位数/3rd Quartile/max/max,或以示例为示例:

> b$stats[2,]
[1]  7.15 16.00 23.45
> b$stats[,2]
[1] 13.60 16.00 19.25 23.45 27.30

,但我无法找到一个简单的方法来提取和格式化中位数和每个子组[,1] [,2]和[,3]的简单方法来获得类似的东西:

[,1] median [lower quartile-upper quartile].

我可以手动做,但我有数百个变量可以保存...任何建议都将不胜感激!感谢Advance

如果您使用的是boxplot,请查看list(b),这将为您提供输出列表。现在,要获得中位数和IQR,这将是第3行(中位数(和2,4(对于IQR范围(。

med <- round(b$stats[3, ], 2) #median
liqr<- round(b$stats[2, ], 2) #lower IQR
uiqr<- round(b$stats[4, ], 2) #upper IQR

现在根据您的预期输出,您可能需要使用某种形式的paste作为

output <- paste0(med, " [", liqr,"-" ,uiqr,"]")

希望这会有所帮助。

相关内容

  • 没有找到相关文章

最新更新