人気ブログランキング | 話題のタグを見る

一人抄読会

syodokukai.exblog.jp
ブログトップ

ボックスプロット(箱ひげ図)作成のためのオープンソースアプリケーション:BoxPlotR

BoxPlotR: a web tool for generation of box plots.

Spitzer M, Wildenhain J, Rappsilber J, Tyers M.

Nature Methods. 2014 Jan 30;11(2):121-2.

「棒グラフ」と「ボックスプロット(箱ひげ図)」
① 棒グラフ(Bar plot)は、平均(mean)を棒の高さで、標準偏差(sd)または標準誤差(standard error of the mean; sem)をエラーバーで示してデータを比較を表現する方法である。非常に多く用いられる方法だが、平均と標準偏差という単純な要約統計量(summary statistics)だけの比較であるため、元のデータの構造の違いを見落とし、結果的に間違った結論も導くことがありうる。一方、以下で述べるボックスプロット(Box plot、別名Box-and-whisker plot; 箱ひげ図)は、要約統計量と元のデータの分布の両方を表すことができ、棒グラフより情報量が多い。ここではそのボックスプロットの特徴と、ボックスプロット作成のためのオープンソースアプリケーションBoxPlotRについて述べる。

ボックスプロット(箱ひげ図)作成のためのオープンソースアプリケーション:BoxPlotR_d0194774_12332494.png

図1 同じデータを棒グラフ(左)とボックスプロット(箱ひげ図、右)で示したもの。
棒グラフでは表現できないデータの分布が、ボックスプロットではよりよく表現できる。

② 棒グラフでは、元のデータの分布がよく分からないことを図2に示す。一番下のcは4種類のパターンの元データ、すなわち「uniform(連続一様分布)」「Normal(正規分布)」「Poisson(ポアソン分布、離散確率分布)」「Exponential(指数分布、連続確立分布)」のそれぞれの確率分布を示している(n=1,000)。これらをaのような棒グラフと標準偏差のエラーバーで表現すると、分布の中心や広がりなどが正しく伝わらなくなってしまう。しかし、これをbのようなボックスプロットにすれば、それぞれの分布に関する情報をより多く伝えることができる。

ボックスプロット(箱ひげ図)作成のためのオープンソースアプリケーション:BoxPlotR_d0194774_12203093.jpg

図2 異なる分布パターン(c)を示すデータを、棒グラフ(a)とボックスプロット(b)で表した。

③ ボックスプロットは「箱ひげ図」(Box-and-whisker plots)と呼ばれるが、ここでいう「ひげ(whisker)」はネコなどの動物に見られる「ヒゲ(洞毛)」のことである。人間の顔の「髭」(あごひげbeardやくちひげmustache)ではないことに注意。
ボックスプロット(箱ひげ図)作成のためのオープンソースアプリケーション:BoxPlotR_d0194774_1220093.jpg

図3 箱ひげ図(Box-and-whisker plots)のwhiskerは、ネコなどの動物のヒゲのこと。

ボックスプロットの表記方法
① データの分布に偏りがあまりない場合は、平均と標準偏差でデータの構造が大体表現できる。一方、データの分布が非対称で偏りがある場合や極端な外れ値がある場合は、四分位数(quartile:データを小さい方から順に並べて四分の一の個数になるデータの数値)と範囲(range:最小値と最大値)の表示が有用である。ボックスプロットは、データの第1四分位数(lower quartile; Q1)、中央値(median, m; 第2四分位数Q2でもある)、第3四分位数(upper quartile Q3)と四分位範囲interquartile range(IQR、Q3-Q1、データの中央50%を含む)およびデータの範囲(最小値と最大値)を視覚化するグラフである。

もし大きな外れ値がある場合、それに引っ張られて平均と標準偏差は大きく影響を受けてしまうが、四分位数と四分位範囲は少数の外れ値からの影響は受けず、データの中心とその広がりが持つ情報をより多く保存できる。

ボックスプロット(箱ひげ図)作成のためのオープンソースアプリケーション:BoxPlotR_d0194774_1219023.gif

図4ボックスプロットの「箱」と「ひげ」が表すもの
「箱(Box)」は第1四分位数(Q1)と第3四分位数(Q3)の間の四分位範囲(IQR)を、箱の中の線は中央値(mean)を表す。データの範囲、すなわち最小値から最大値までは「ひげ(whiskers)」の広がりで表すが、一般的には「ひげ」の長さは箱の端からIQRの長さの1.5倍以内とし、その外側にある外れ値(outlier)があれば「ひげ」の外側の○で示す。

② ボックスプロットは、第1四分位数(Q1)と第3四分位数(Q3)の間の四分位範囲(IQR)を「箱(box)」で、中央値(mean)を箱の中の線で表す。最小値から最大値までは「ひげ(whiskers)」の広がりで表すが、一般的には「ひげ」の長さは、箱の端からIQRの長さの1.5倍以内とし、その外側にある外れ値(outlier)は「ひげ」の外側の○で示す。これが、箱ひげ図を開発したテューキーによる定義だが (John Wilder Tukeyはアメリカの数学・統計学者 1915-2000)が、ヒゲは「最大値から最小値まで」(Spearのスタイル)や「データの95%中央範囲」(Altmanのスタイル)とする場合もある。

(なお、IQRの1.5倍の範囲というのは、通常の分布であれば±2.7σ(シグマ、標準偏差)であり、データの99.3%を含むことになる。)

③ ボックスプロットのバリエーションとして、バイオリンプロット、ビーンプロット、ビー スォームなど、さらに多くのデータ分布の情報を表すことができるものもある(図5)。
バイオリンプロット:
中心の白丸が中央値、真ん中の黒い太い縦線がIQR、真ん中の細い縦線がIQRの±1.5倍以内のヒゲ。左右に広がる灰色の山はカーネル密度推定(サンプルからの母集団データ分布の推定)を表す。
ビーンプロット:
真ん中の黒い横線が中央値、複数の白い横線は、データが存在してする場所、左右に広がる山は密度推定(バイオリンプロットとはパラメーターが異なるので形は違うが)を表す。
ビー スウォーム(bee swarm=蜂の群れ):データを実際の点としてプロットしたグラフ。要約統計量が表現されていないが、データの分布を直接視覚化できる。ボックスプロットに重ねて表現することも可能(図6)。

ボックスプロット(箱ひげ図)作成のためのオープンソースアプリケーション:BoxPlotR_d0194774_12173494.jpg

図5 (a)一様分布(uniform)、一峰性(unimordal)、二峰性(bimordal)のそれぞれの分布を、(b)棒グラフ、ボックスプロット、バイオリンプロット、ビーンプロットで表現している。棒グラフによる比較では平均値が同じのため似たようなグラフに見えるが、他のグラフでは分布の差がよりはっきり視覚化されている。
ボックスプロット(箱ひげ図)作成のためのオープンソースアプリケーション:BoxPlotR_d0194774_1217411.png

図6 ビースウォーム(bee swarm; 蜂の群れ)とボックスプロットを重ね書きした例


④ 母集団(Population)から抽出されたサンプル(sample)の中央値から、もとの母集団の中央値を推定するには、中央値の95%信頼区間(confidence interval; CI)を示す。

図7の(a)は母集団の分布を表すグラフである。これは、平均μ=0(濃い点線)、標準偏差σ1(薄い点線)の歪んだ正規分布(skewed normal distribution)であり、非対称で偏った形の分布であるため、中央値(m=-0.19、縦の実線)とIQR(灰色部分)を示すのがよい。この母集団から20個のサンプルを抽出して(b)のボックスプロットを作成した

n=20のサンプルは図7(b)の図の一番上の○で表している。上の箱ひげ図は、中央値(m)とQ1-Q3(IQR)の間の箱、箱から1.5 x IQR以内の範囲のテューキースタイルの「ひげ」、およびそれらには含まれない外れ値(outliers)「ひげ」の外側(この図では右側)に示している。箱の幅(この図では高さ)は任意に決めてよいのだが、さらに下の箱ひげ図は箱の幅を√n(サンプルサイズの大きさを表す)に比例するようにしてある。これにより群のサンプルサイズを表すことができる。さらに、中央値の95%信頼区間をV字型の切れ目(ノッチ、notch)長さ(一番下の点線の長さ)で表している。(中央値の95%信頼区間はm±1.58xIQR√nで求められる)。
ボックスプロット(箱ひげ図)作成のためのオープンソースアプリケーション:BoxPlotR_d0194774_12152930.jpg

図7 (a)母集団(population)の分布と、(b) そこから抽出したn=20のサンプルをボックスプロットで表現したグラフ。
(b)では中央値の95%信頼区間(サンプルの中央値から95%の確率で推定される母集団の中央値の範囲)を箱の切れ目(ノッチ:点線の長さ)で表している。

⑤ 箱ひげ図のノッチがオーバーラップしないことの意味:
一般的に2群の比較で、中央値の95%信頼区間(ノッチの長さ)がオーバーラップしないとき、2群の中央値は95%の確率で差がある(p<0.05)と判断できる(ただし、オーバーラップするから、といって有意差が「ない」とは言えないが)。
ボックスプロット(箱ひげ図)作成のためのオープンソースアプリケーション:BoxPlotR_d0194774_1214129.png

図8 通常のテューキースタイルの箱ひげ図(上)に、中央値の95%信頼区間をノッチで示したもの。なお、中央にある十字は平均値(中央値とは少しずれているのに注意)、グレーの縦の長方形は平均値の83%信頼区間を示しているが、ここでは特に触れない。

サンプルサイズが少ないと、ノッチは箱より大きい間隔となることがある(図9)。
ボックスプロット(箱ひげ図)作成のためのオープンソースアプリケーション:BoxPlotR_d0194774_12132551.jpg
図9 サンプルサイズ(n)が小さいとノッチが箱より大きくなる。、箱ひげ図ではあまりに小さいサンプルサイズ(n<5)は避けるべき。


ボックスプロット作成のためのオープンソースアプリケーション
今まで述べたような箱ひげ図の境界は、正確には、用いる統計ソフトウエアによって異なってしまう。これは、(1)四分位値を計算する統一され方法がない(単純平均か線形補間に基づく)、(2)Rなどいくつかのアプリケーションでは箱の境界を四分位の変わりに下側および上側ヒンジ(中央値以下/以上のデータの中央値)を用いており、これは四分位による境界とは微妙に異なることがある、などの理由による。

箱の幅、ヒゲの位置、ノッチの大きさや外れ値の表示などを一定にし、もっと多くボックスプロットが用いられることが望ましい。従来、ボックスプロットが多く用いられてこなかった理由の一つに便利なソフトウェアツールがなかったためという原因がある。近年有用なオープンソースアプリケーションとしてBoxPlotRが用いられるようになっている。

BoxPlotRはRおよびRパッケージであるShiny、beanplot、vioplot、beeswarm、RColorBrewer(Rの色彩指定)で書かれている。詳しくは、http://boxplot.tyerslab.com/を参照。

by md345797 | 2014-02-23 12:23 | その他