← PC用は別頁
≪箱ひげ図の作り方≫
◇この教材は,高校生が表計算ソフトを使って,数学Tの「データ分析」レベルの内容を扱うときの「演習の手引き」として書いたものです.(筆者自身用の備忘録でもある)
◇●1〜●4のソフトについて操作方法を解説していますが,全部読む必要はありません.自分のパソコンで使えるソフトを選んで,読んでください. |
3. パソコンを使った四分位数の計算ここでは,次の4つの方法について,実際に行った結果をまとめたものです.全部読む必要はありません.自分のパソコンで使える箇所を選んで,読んでください.
●1「Microsoft Excel 2021」(インストール型)
●2 無料で使える「Excel for the web」 ●3 無料で使える「Google スプレッドシート」 ●4 無料でインストールできる統計用ソフト「R」
Excelで四分位数を求める関数は,ア)Quartile(), イ)Quartile.exc(), ウ)Quartile.inc()の3つある.アは,旧バージョンのExcelで作られたワークシートでも使えるように(下位互換性を維持するために)残されているもの.イは中学校・高等学校の教科書での四分位数計算の決め方,すなわちExcelでの「排他的な中央値」に対応している(excはexclusive:排他的なの略.)ウは,後に述べる箱ひげ図を考案したアメリカの統計学者テューキーが考えた決め方,すなわちExcelでの「包括的な中央値」に対応している(incはinclusive:包括的なの略.)
中学・高校の授業で,四分位数を計算するとき,●1,●2,●3では,イ)のQuartile.exc()を使う.●4では,パラメータをtype=6, 2,5などの形で指定するとできるようです. (以下の記述は,ソフトのマニュアル・HELPに書かれていなくて,2023年現在でweb記事でもちょうど合う解説が見つからなかったものについて,筆者が数十回テストした結果をまとめたものです.・・・つまり,文献の裏付けはありません.個人の感想ですが,これがないと実際に困るので,まとめたものです)
◎印:できる,〇:概ねできる,▼:薦めない
!!このまとめは,このページの最後の方(箱ひげ図の作り方)まで引きずっていきます!!
|
(1)(2)総数が奇数の場合
●1,●2,●3とも ⇒ ◎:できる
=QUARTILE.EXC(データの範囲, 戻り値)
の形で使う.戻り値1の場合は,第1四分位数:Q1,戻り値2の場合は,第2四分位数(中央値):Q2,戻り値3の場合は,第3四分位数:Q3が返される.2.(1)で示した例 「総数が奇数個で,中央値を取り除いた上組も下組も奇数になる場合」
1,2,5,6,7,9,10,11,13,16,18
の11個のデータについて,(セルの範囲 A1〜A11 にあるとする)
=QUARTILE.EXC(A1:A11, 1)
⇒ 5 (第1四分位数:Q1)
=QUARTILE.EXC(A1:A11, 2)
⇒ 9 (第2四分位数:Q2)
=QUARTILE.EXC(A1:A11, 3)
⇒ 13(第3四分位数:Q3)
が得られる.
♪♥♫(まじめな雑談)♣♬∅♠
●4 ⇒ ◎:できる●1. Excel2021, ●2. Excel on the web, ●3. Googleスプレッドシートで四分位数を求める関数は quartile(日本語:四分位) であるが,●4. 「R」で四分位数を求める関数は quantile(日本語:四分位数) 自慢じゃないが,老眼・近眼・乱視の筆者には,同じに見えるので適当に入力していると,エラーになる・・・ビックリ!
• 四分位数を返す関数 Quantile()を使う場合
2.(2)で示した例:
d1<-c(1,2,5,6,7,9,10,11,13,16,18)
type=6 が排他的な中央値を返す
quantile(d1,type=6)
⇒ 0% 25% 50% 75% 100%
• 5数要約を返す関数 Summary()を使う場合1 5 9 13 18
d1<-c(1,2,5,6,7,9,10,11,13,16,18)
quantile.type=6 が排他的な中央値を返す
summary(d1, quantile.type=6)
⇒ Min. 1st Qu. Median Mean 3rd Qu. Max.
(平均値 Meanも出力される)
1.000 5.000 9.000 8.909 13.000 18.000 「総数が奇数個で,中央値を取り除いた上組も下組が偶数になる場合」
2,4,4,5,8,8,15,17,20
の9個のデータについて,(セルの範囲 B1〜B9 にあるとする),●1,●2,●3とも ⇒ ◎:できる
=QUARTILE.EXC(B1:B9, 1)
⇒ 4 (第1四分位数:Q1)
=QUARTILE.EXC(B1:B9, 2)
⇒ 8 (第2四分位数:Q2)
=QUARTILE.EXC(B1:B9, 3)
⇒ 16(第3四分位数:Q3)
が得られる.
• 四分位数を返す関数 Quantile()を使う場合
d2<-c(2,4,4,5,8,8,15,17,20)
type=6 が排他的な中央値を返す
quantile(d2,type=6)
⇒ 0% 25% 50% 75% 100%
• 5数要約を返す関数 Summary()を使う場合2 4 8 16 20
d2<-c(1,2,5,6,7,9,10,11,13,16,18)
quantile.type=6 が排他的な中央値を返す
summary(d2, quantile.type=6)
⇒ Min. 1st Qu. Median Mean 3rd Qu. Max.
(平均値 Meanも出力される)
2.000 4.000 8.000 9.222 16.000 20.000 |
(3)(4)総数が偶数の場合
●1,●2,●3とも ⇒ 〇:概ねできるが,▼:少数では無理・・・ア 2.(3)で示した例 「総数が偶数個で,中央値の上組も下組も奇数になる場合」
1,2,3,4,5, 6,7,8,9,10
の10個のデータについて
⇒ 中学・高校の授業では,Q2=5.5, Q1=3, Q3=8
(セルの範囲 A1〜A10 にあるとする),●1,●2,●3とも
=QUARTILE.EXC(A1:A10, 1)
⇒ 2.75 (第1四分位数:Q1)
=QUARTILE.EXC(A1:A10, 2)
⇒ 5.5 (第2四分位数:Q2)
=QUARTILE.EXC(A1:A10, 3)
⇒ 8.25(第3四分位数:Q3)
web記事などで,簡単な説明が見つからないので推定する.読者が覚えやすいように,なるべく情緒的な用語を使って,動揺しやすい審判をイメージしながら説明する.
イ中央値5.5はよい. 全体が偶数だったときは,上下の組も偶数になるように,5も6も「中央値の代わりに削除して」1,2,3,4から下組の中央値を求めるが,5を厳しく削除した埋め合わせとして,2,3の中央値でなく,(中央寄りに)3:1に内分した点2.75とする. 上組も同様に,初め厳しく6も削除する代わりに,その埋め合わせとして,8,9の中央値でなく,1:3に(中央寄りに)内分した点8.25とする. 他の例
1,2,6,6,10, 12,13,15,19,20
⇒ 中学・高校の授業では,Q2=11, Q1=6, Q3=15
●1,●2,●3とも,中央値は11として,
⇒ 11 (第2四分位数:Q2)
全体が偶数だったときは,上下の組も偶数になるように,10と12も削除して,その埋め合わせとして,2,6を(中央寄りに)3:1に内分する点を求めて5とする.
⇒ 5 (第2四分位数:Q1)
同様にして,15,19を(中央寄りに)1:3に内分する点を求めて16とする.
⇒ 16 (第2四分位数:Q3)
ウ2.(4)で示した例 「総数が偶数個で,中央値の上組も下組も偶数になる場合」
1,2,3,4, 5,6,7,8
の8個のデータについて
⇒ 中学・高校の授業では,Q2=4.5, Q1=2.5, Q3=6.5
●1,●2,●3とも(セルの範囲 A1〜A8 にあるとする)
=QUARTILE.EXC(A1:A8, 1)
⇒ 2.25 (第1四分位数:Q1)
=QUARTILE.EXC(A1:A8, 2)
⇒ 4.5 (第2四分位数:Q2)
=QUARTILE.EXC(A1:A8, 3)
⇒ 6.75(第3四分位数:Q3)
中央値は4.5全体が偶数だったときは,上下の組も偶数になるように,4と5も削除せず,その埋め合わせとして,2,3を(端寄りに)1:3に内分する点を求めて2.25とする 同様にして,6,7を(端寄りに)3:1に内分する点を求めて6.75とする. エ 他の例
1,2,7,9,13,14,17,20,
の16個のデータでは,22,25,27,30,34,38,40,41 ●1,●2,●3とも, 中央値は21 20と22も削除せず,その埋め合わせとして,9,13を(端寄りに)1:3に内分する点を求めて10とする 同様に,30,34を(端寄りに)3:1に内分する点を求めて33とする
⇒ 以上のア〜エのいずれも,●1,●2,●3の方法で,第1四分位数:Q1,第3四分位数:Q3が,中学・高校の教え方とちょうど合うものはない.
⇒ 目で見て,計算するしかない 四分位数を用いた散らばり具合の分析は,総数が数十とか数百という普通に出あう大きなデータに対しては,些細な相違はほとんど影響しないが,データ数が10個程度の場合,中学・高校の教科書で教える四分位数計算の決め方とExcelなどコンピュータソフトで計算した結果とは,食い違うことがある. この結果は,箱ひげ図にも反映する.
ア〜エの特徴がExcelのHELPに書かれている訳ではない.筆者が数十回も実験したらこうなったという結果をまとめたものです
|
●4 ⇒ ◎:できるが,△:コテコテする・・・ 2.(4)で示した例
1,2,3,4,5,6,7,8,9,10
の10個のデータについて,
• 四分位数を返す関数 Quantile()を使う場合
d3<-c(1,2,3,4,5,6,7,8,9,10)
type=2 または type=5 がデータ数が偶数のときに,中高の教え方と一致する排他的な中央値を返す
quantile(d3,type=2)
⇒ 0% 25% 50% 75% 100%
• 5数要約を返す関数 summary()を使う場合1.0 3.0 5.5 8.0 10.0
d3<-c(1,2,3,4,5,6,7,8,9,10)
またはsummary(d3, quantile.type=2)
d3<-c(1,2,3,4,5,6,7,8,9,10)
quantile.type=2または quantile.type=5 が中高の教え方と一致する排他的な中央値を返す
summary(d3, quantile.type=5)
⇒ Min. 1st Qu. Median Mean 3rd Qu. Max.
(平均値 Meanも出力される)1.0 3.0 5.5 5.5 8.0 10.0 他の例 1,2,7,9,13,14,17,20,22,25,27,30,34,38,40,41 の16個のデータでは,
d4<-c(1,2,7,9,13,14,17,20,22,25,27,30,34,38,40,41)
またはquantile(d4,type=2)
d4<-c(1,2,7,9,13,14,17,20,22,25,27,30,34,38,40,41)
により
quantile(d4,type=5)
⇒ 0% 25% 50% 75% 100%
同様に
1 11 21 32 41
d4<-c(1,2,7,9,13,14,17,20,22,25,27,30,34,38,40,41)
またはsummary(d4, quantile.type=2)
d4<-c(1,2,7,9,13,14,17,20,22,25,27,30,34,38,40,41)
により
summary(d4, quantile.type=5)
⇒ Min. 1st Qu. Median Mean 3rd Qu. Max.
1.00 11.00 21.00 21.25 32.00 41.00 |
■ここまでの実験結果の要約■ ア) データ総数=奇数個,上組下組とも奇数個となる例
*1は,Q1のとき,(データ範囲,1),Q2のとき,(データ範囲,2),Q3のとき,(データ範囲,3)とする
イ) データ総数=奇数個,上組下組とも偶数個となる例*2は,(データ,type=6)とする *3は, (データ,quantile.type=6)とする
*1, *2, *3はアと同様
ウ) データ総数=偶数個,上組下組とも奇数個となる例
*1は,Q1のとき,(データ範囲,1),Q2のとき,(データ範囲,2),Q3のとき,(データ範囲,3)とする
エ) データ総数=偶数個,上組下組とも偶数個となる例*2は,(データ,type=2)または(データ,type=5)とする *3は, (データ,quantile.type=2)または(データ,quantile.type=5)とする
*1, *2, *3はウと同様
⇒ 以上のように,●4の方法では,
• データ総数が奇数のときは
quantile(データ,type=6) または summary(データ, quantile.type=6)
により,中学・高校の教え方と一致する結果が得られる.• データ総数が偶数のときは
quantile(データ,type=○) ○=2,5 または summary(データ, quantile.type=○) ○=2, 5
により,中学・高校の教え方と一致する結果が得られる.
Rのマニュアルにこのように書かれている訳ではない.筆者が数十回も実験したらこうなったという結果をまとめたものです
|
4. ここまでの復習次のデータが与えられているとき,目の子算で(目で見た暗算で),中学・高校の教え方と一致する四分位数を求めてください.また,パソコンを使って,その結果を確かめてください.
【問題1】
【解答】2,4,5,6,7,10,12,13,15,18,20 Q1=5, Q2=10, Q3=15・・・(答) (データ総数が11個:奇数だから)パソコンでは,●1,●2,●3のいずれも,=QUARTILE.EXC(データ範囲, 1), =QUARTILE.EXC(データ範囲, 2), =QUARTILE.EXC(データ範囲, 3) で結果が得られる. ●4では,
d1<-c(2,4,5,6,7,10,12,13,15,18,20)
により,上記の結果が得られる.quantile(d1,type=6) または summary(d1,quantile.type=6)
【問題2】
【解答】3,6,9,10,12,15,16,18,20,22,25,26,28 Q1=9.5, Q2=16, Q3=23.5・・・(答) (データ総数が13個:奇数だから)パソコンでは,●1,●2,●3のいずれも,=QUARTILE.EXC(データ範囲, 1), =QUARTILE.EXC(データ範囲, 2), =QUARTILE.EXC(データ範囲, 3) で結果が得られる. ●4では,
d2<-c(3,6,9,10,12,15,16,18,20,22,25,26,28)
により,上記の結果が得られる.quantile(d2,type=6) または summary(d2,quantile.type=6)
【問題3】
【解答】1,3,5,7,9,11,13,15,17,19,21,23,25,28 Q1=7, Q2=14, Q3=21・・・(答) (データ総数が14個:偶数だから)パソコンでは,●1,●2,●3のいずれも,中央値 =QUARTILE.EXC(データ範囲, 2)の結果のみ一致する.他は合わない. ●4では,
d3<-c(1,3,5,7,9,11,13,15,17,19,21,23,25,28)
により,上記の結果が得られる.quantile(d3,type=2)もしくはquantile(d3,type=5) または summary(d3,quantile.type=2)もしくはsummary(d3,quantile.type=5)
【問題4】
【解答】2,5,8,11,14,17,20,23,26,29,32,35 Q1=9.5, Q2=18.5, Q3=27.5・・・(答) (データ総数が14個:偶数だから)パソコンでは,●1,●2,●3のいずれも,中央値 =QUARTILE.EXC(データ範囲, 2)の結果のみ一致する.他は合わない. ●4では,
d4<-c(2,5,8,11,14,17,20,23,26,29,32,35)
により,上記の結果が得られる.quantile(d4,type=2)もしくはquantile(d4,type=5) または summary(d4,quantile.type=2)もしくはsummary(d4,quantile.type=5) |
5. 箱ひげ図==中学校の復習==
• 最小値,第1四分位数,第2四分位数(中央値),第3四分位数,最大値を次のように視覚的に表したものを「箱ひげ図」という.
• 第3四分位数と第1四分位数の差を「四分位範囲」という. • 範囲や四分位範囲によって,資料の散らばり具合が分かる. |
♥==高校入試問題(復習)==♠ -- 手書きで「箱ひげ図」を描く場合
♪基本の確認は♬ ⇒ 【こちら】《データ総数が奇数個,上下2組とも奇数個》の問題例
右の表は,クイズ大会に参加した11人の得点である。この表をもとにして,箱ひげ図をかくと,右の図のようになった。a, bの値をそれぞれ求めなさい。 (2022年度 徳島県公立高校入試問題)
(解答)
• 資料を小さい順に並べると 5,7,[7],8,10, (11),13,14,[16],19, 20 となる. • 11個の資料で小さい順に6番目の 11 が中央値(第2四分位数) • それを取り除いた残り2組について,下の組の中央値 7が第1四分位数,上の組の中央値16が第3四分位数 したがって,a=7, b=16…(答)
【問題2】
次の【データ】は,ある生徒15人について,小テストを実施したときの全員の得点を,値の小さい順に並べたものである。 【データ】
4, 6, 6, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24,
28, 30 (単位:点) (点) 30 26 22 18 14 10 6 2 @ A B C この【データ】を表した箱ひげ図として正しいものを,右の@〜Cの中から1つ選び,番号を書きなさい。 (2022年度 佐賀県公立高校入試問題)
(解答)
4,6,6,[6],8,10,12,(14),16,18,20,[22],24,28,30 ⇒ 最小値=4,第1四分位数=6, 第2四分位数=14, 第3四分位数=22, 最大値=30だからA…(答) |
==パソコンを使う場合の「箱ひげ図の作成」==
5数要約
箱ひげ図
T 表1のように与えられたデータから,(直接)箱ひげ図を作れるか U 表1のように与えられたデータから,5数要約の計算をして,箱ひげ図を作れるか
【要約】 《筆者の実験結果です.異論はあり得ます》
●1「Microsoft Excel 2021」(インストール型) ●2 無料で使える「Excel for the web」 ●3 無料で使える「Google スプレッドシート」 ●4 無料でインストールできる統計用ソフト「R」
◎印:できる,〇:概ねできる,▼:薦めない
T●1,2は,「データから直接に箱ひげ図」ができ,さらに「箱ひげ図に値のラベルも付けられる」が,データ総数が偶数のとき,Q1,Q3の値が,中学・高校の教え方と合わない. ●4は,「データから直接に箱ひげ図」ができるが,「箱ひげ図に値のラベルは付けられない」. U ●1,2で,5数要約表から箱ひげ図を作るのは,薦められない. |
T 表1のように与えられたデータから,(直接)箱ひげ図を作れるか ●1 「Microsoft Excel 2021」(インストール型)
〇:概ねできる
データ総数が,数十,数百のときは細部を気にしなくてもよいでしょう.ただし,「データ総数が30以下のような小さい数字」かつ「データ総数が偶数」であるときは,得られたグラフのQ1,Q3の値が,中学・高校で習った内容と合わない場合がある.
(1) 表1のデータがExcel上にあるとして,列タイトル(得点)を含めて,データ範囲をドラッグして反転表示にする.(2) 挿入→(グラフの一群のアイコンを探すが,ピッタリのものがないのでのマークをクリックして,「すべてのグラフ」というタブを選択する)→箱ひげ図 (3) ここまでの作業で,箱ひげ図が表示される (4) グラフをポイントすると,画面右側に「グラフエリアの書式設定」ウィンドウが表示され,箱ひげ図の色,枠線,塗り方パターンが選べる (5) 再び,グラフをポイントして,グラフの右上に表示されれている+のアイコンをクリック.データラベルにチェックを入れて,右などを選ぶ (6) 以下の部分は、慎重にしないとできない! グラフ全体ではなく,箱ひげ図の部分だけをポイントして,「排他的な中央値」にラジオボタンがあることを確かめる.(確かめなくても,デフォルトでそれが選ばれるが,「排他的な中央値」を選んでいることを認識することが重要) ついでに「平均マーカーを表示する」にチェックが入っていることを確かめる.箱ひげ図の中に5数要約に含まれない「平均」も,×印によって,表示される(平均が不要な場合は,チェックを外す). このグラフに表示された数字が(特に,Q1とQ3)「排他的な中央値」の計算方法によって求められた数字と一致していることが重要
データの個数は11個で,中央値はQ2=63.次に,「排他的な中央値」として,63を取り除いて,下組「38,40,44,46,54」の中央はQ1=44,上組「78,82,82,85,92」の中央はQ3=82
最小値は38,最大値は92.なお,平均は×印の64 ●2 無料で使える「Excel for the web」
⇒導入方法は前のページ〇:概ねできる
「データ総数が30以下のような小さい数字」かつ「データ総数が偶数」であるとき,●1と同様の問題点がある.
作業手順は,●1とほぼ同じ.(2)でグラフを探すのは∨のアイコンからグラフを全部表示して,箱ひげ図を選ぶ. 書式設定で,データラベルで値にチェックを入れる.(塗りこみで斜線パターンは選べない) ●3 無料で使える「Google スプレッドシート」
⇒導入方法は前のページ▼:お薦めしない Googleスプレッドシートでは,与えられたデータから直接に箱ひげ図を作成することは無理です.Uの5数要約を経由しても,箱ひげ図そのものは選べない. 第2四分位数(中央値)を除いた,最小値,Q1,Q3,最大値の4つの値からローソク図を作ることはできるが,ひげの部分がT字型に表示されない. ●4 無料でインストールできる統計用ソフト「R」
⇒導入方法は前のページ◎:できる
• Rのコマンドプロンプトから,次のように入力する.
d1<-c(38,40,44,46,54,63,78,82,82,85,92)
boxplot(d1,type=6) ここまでで,右図の散布図が描かれる. 同時に,次の5数要約がRのコンソール画面に表示される
• 「R」で「排他的な中央値」を指定するには,パラメータとして,type=6を書き込む
• Excelの場合と同様に,箱ひげ図に値を記入する方法は? |
U 表1のように与えられたデータから,5数要約の計算をして,箱ひげ図を作れるか ●1 「Microsoft Excel 2021」(インストール型)
▼:お薦めしない
右の表1のような元のデータから,=Quartile.exc()関数を利用して,表2のような5数要約を作ることはできる. ただし,=Quartile.exc()関数は,戻り値が0,4のときは,#NUM!(数字でない)を返す仕様になっているので,0の横には,最小値を求める関数 =min()を,4の横には,最大値を求める関数 =max()を書く. このようにすれば,中高の教科書通りの排他的中央値を用いた5数要約になるが,表2から箱ひげ図を作っても,求めたものは得られない. Excelでこの作業を行うと,表1に示された元のデータに対する箱ひげ図ではなく,新たに作られた表2の5つの数に対する箱ひげ図を作ってしまうので,ここで想定したものとは違うものになる.
|