已计算平均值、置信区间和最小最大值的R箱图



我正在尝试使用已经计算的置信区间和最小值和最大值生成R中的箱图。对于时间1,2,3,4,5(x轴(,我有MN,它表示5个元素的数组,每个元素描述时间点的平均值。我还有CI1、CI2、MINIM和MAXM,每一个都是5个元素的数组,每个时间步长一个,代表上CI、下CI、最小值和最大值。我想在每个时间步长生成5个方框图条形图。

我已经尝试了通常的方框图功能,但我可以让它与已经计算的CI和最小最大一起工作

如果该方法适用于普通的绘图函数,那就太好了,尽管ggplot也可以。

由于您尚未发布数据,我将使用内置的iris数据集,保留前4列。

data(iris)
iris2 <- iris[-5]

函数boxplot计算它使用的统计信息,然后调用bxp进行打印,并将这些计算值传递给它
如果您想要一组不同的统计数据,则必须计算它们并手动将它们传递给bxp

我假设CI是指正常的95%置信区间。为此,您需要首先计算标准误差和平均值。

s <- apply(iris2, 2, sd)
mn <- colMeans(iris2)
ci1 <- mn - qnorm(0.95)*s
ci2 <- mn + qnorm(0.95)*s
minm <- apply(iris2, 2, min)
maxm <- apply(iris2, 2, max)

现在让boxplot创建bxp使用的数据结构,即matrix

bp <- boxplot(iris2, plot = FALSE)

并用前面计算的值填充矩阵。

bp$stats <- matrix(c(
minm,
ci1,
mn,
ci2,
maxm
), nrow = 5, byrow = TRUE)

最后,绘制它。

bxp(bp)

最新更新