アメリエフの技術ブログ

Amelieff Staff Blog

ご指摘ありがとうございます!(箱ひげ図)

箱ひげ図の概念に対し、ご指摘いただきました。
誠に申し訳ありません。訂正し、御詫び申し上げます。
またご指摘いただきまして、誠にありがとうございます。
下記に訂正、追加説明を行います。

箱ひげ図の概念図(訂正版)をFigure1に示します。


Figure1 箱ひげ図の概念図

御指摘がありましたように、 “ひげ”の上下末端は、“最大値”、“最小値”ではなく、それぞれ“(箱の長さ)×range(default=1.5)+第3四分位数 ”および“(箱の長さ)×range(default=1.5)-第1四分位数 ”を指します。

(ひげの定義は、書籍、参考資料によって異なります(上記の定義の他: “(箱の長さ)×range(default=1.5)+第3四分位数”内の最大数など)。そのため、上記の定義が絶対的に正しいとは申しません)

さらにRで箱ひげ図を作成する際にも何も指定することなく下記のようにコマンドを書きますと、ひげは記載されません(Figure 2)。

コマンド1
age <- c(22, 23, 24, 25, 40)
boxplot(age)


Figure2 コマンド1で作成した箱ひげ図

しかしboxplot()コマンドにはrangeというオプションがあります。こちらのrangeは、“箱の長さから何倍の場所にひげの長さを設定するか?”という意味となります。

rangeはdefaultでは1.5となっています。
そのため上記のコマンドの場合、第3四分位数=25であることから、ひげ上部の長さは、

(25-23)×1.5+25=28

となります。ageの変数内に28がないため、上のコマンドでは上のひげが表示されませんでした。

このオプションをrange=0とすると、ひげの上下は、数値データ群の“最大値”“最小値”を示します(Figure3)。

コマンド2
age <- c(22, 23, 24, 25, 40)
boxplot(age, range=0)


Figure3 コマンド2で作成した箱ひげ図


今回の御指摘、誠にありがとうございました。とても勉強になりました。
また不足の致すところがあれば、ご指摘いただけますと幸いです。