关于以下代码,我在boxplot中包含了一些标记:

> boxplot(dframe1$High.calcium..diet, dframe1$Low.calcium.diet,         # The basic boxplot command
+ varwidth = FALSE,                        # width of boxes represents sample size
+ notch = TRUE,                           # add a notch indicating 95% confidence intervals
+ names = c("High Calcium diet", "Low Calcium diet"),                     # labels the different boxes
+ col=c("violet", "light green"),          # colours the different boxes
+ xlab = "Diet",                  # adds an x-axis label
+ ylab = "parathyroid hormone per 100 ml blood",      # adds a y-axis label
+ cex.lab = 1.6,                          # adjusts the size of the axis labels
+ cex.axis = 1.3,                         # adjusts the size of the axis numbering
+ las = 1)
Warning message:
In bxp(list(stats = c(12.7, 14.4, 16.2, 18.25, 23.1, 15.1, 40.2,  :
  some notches went outside hinges ('box'): maybe set notch=FALSE
>


但是,如上所述,我收到警告,但是由于需要缺口,所以我不想将notch设置为FALSE。我该如何解决?

这是随之而来的数据:

High calcium  diet  Low calcium diet
14.5    52.7
18.2    44.4
15  125
14.3    66.4
25.7    23.3
17.3    88.3
23.1    38.8
16.2    42.9
12.7    15.1
18.3    41.6
13.2    53.2

最佳答案

这意味着置信区间(即切口的大小)大于四分位间距(IQR)。槽口的大小取决于您的数据:+/-1.58 IQR/sqrt(n)参见?boxplot.stats

如果您采样较大(增大n),则陷波的大小可能会减小。

您还可以决定绘制没有槽口的箱线图,并手动将标记添加到置信度极限。

创建没有缺口的箱线图:

boxplot(dframe1, notch=F, ylim=c(0,125))


检索数据框中两列的置信区间:

ci_high = boxplot.stats(dframe1[,1], do.conf=T)$conf
ci_low  = boxplot.stats(dframe1[,2], do.conf=T)$conf


将这些添加到绘图中:

points(x=c(1,1), y=ci_high, col=2, pch=8)
points(x=c(2,2), y=ci_low, col=2, pch=8)

07-24 19:25