前回の授業では、2次元データを散布図にしました。 ただ、散布図にできるのは、量的データの場合です。 今日は、質的データの場合を考えます。
ここで、例として、ある小学校の5年生に対して、以下のようなアンケート調査が行われたとしましょう。
小五男女の体育の好き嫌いアンケート
問1 あなたは男女のどちらですか。
1. 男子 2. 女子
問2 あなたは体育が好きですか。
1. 好き 2. 嫌い
そして、以下のようなアンケート結果が得られたとします。
児童 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
男女 | 2 | 2 | 2 | 1 | 1 | 1 | 2 | 2 | 1 | 2 | 2 | 2 | 2 | 1 | 1 |
体育 | 2 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 2 | 1 | 1 | 1 | 1 | 2 |
これは、2次元の質的データです。 このようなデータは、クロス集計表というものにまとめられます。
クロス集計表 ( cross tabulation table )とは、変数 x (今回は男女)の項目(男子、女子)を縦に並べ、変数 y (体育)の項目(好き、嫌い)を横に並べ、項目の交わる部分に対応するデータの度数を書き込んだ表です。
男女 | 体育 | 合計 | |
---|---|---|---|
好き | 嫌い | ||
男子 | 5 | 1 | 6 |
女子 | 7 | 2 | 9 |
合計 | 12 | 3 | 15 |
クロス集計表は、 分割表 ( contingency table )や クロス表 ( cross table )とも呼ばれます。
上記のクロス集計表から、何が読み取れるでしょうか。 体育の好きな男子が5人、女子が7人だから、女子のほうが男子より体育が好きだと言っていいでしょうか。 そもそも、アンケート調査した人数が男女で異なっているので、人数を比較するのではなく、割合を比較すべきです。 この割合、すなわち度数÷合計を、 相対度数 ( relative frequency )と呼びます。 クロス集計表に相対度数を追加すると、次のようになります。
男女 | 体育 | 合計 | |
---|---|---|---|
好き | 嫌い | ||
男子 |
5
83% |
1
17% |
6
100% |
女子 |
7
78% |
2
22% |
9
100% |
合計 |
12
80% |
3
20% |
15
100% |
これで、体育の好きな男子が83%、女子が78%だから、男子のほうが女子より体育が好きだと言えます。 (もちろん、このような結論を出すには、アンケートの人数が少なすぎますが。)
なお、今回の相対度数は、度数を横方向の合計で割りました。 これを横比と言います。 度数を縦方向の合計で割った、縦比の相対度数も考えられます。
男女 | 体育 | 合計 | |
---|---|---|---|
好き | 嫌い | ||
男子 |
5
42% |
1
33% |
6
40% |
女子 |
7
58% |
2
67% |
9
60% |
合計 |
12
100% |
3
100% |
15
100% |
さらに、度数を全度数で割った相対度数もあり得ます。
男女 | 体育 | 合計 | |
---|---|---|---|
好き | 嫌い | ||
男子 |
5
33% |
1
7% |
6
40% |
女子 |
7
47% |
2
13% |
9
60% |
合計 |
12
80% |
3
20% |
15
100% |
横比、縦比、全体比のどの相対度数を使うべきかはデータによりますが、多くの場合、横比が使われます。
量的な2次元データは散布図にする、質的な2次元データはクロス集計表にする、と分かりました。 では、質的データと量的データの組み合わせは、どうすればいいでしょうか。
以下のデータは、ある高校の生徒の性別と体重です。 男女(1=男子、2=女子)は質的データで、体重は量的データです。
生徒 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
性別 | 2 | 1 | 1 | 2 | 1 | 1 | 1 | 2 | 2 | 1 |
体重(kg) | 51.0 | 71.1 | 67.2 | 56.1 | 55.1 | 61.0 | 57.6 | 50.5 | 50.1 | 68.0 |
このような場合は、量的データを適切な階級に分ければ、クロス集計表にまとめられます。
性別 | 体重(kg) | 合計 | ||
---|---|---|---|---|
50〜60 | 60〜70 | 70〜80 | ||
男子 | 2 | 3 | 1 | 6 |
女子 | 4 | 0 | 0 | 4 |
合計 | 6 | 3 | 1 | 10 |
それでは、Excelを利用して、クロス集計表を作成しましょう。 次のExcelファイルをダウンロードしてください。
child | gender | physical |
---|---|---|
1 | 2 | 2 |
2 | 2 | 1 |
3 | 2 | 1 |
... | ... | ... |
15 | 1 | 2 |
Excelでクロス集計表を作成するには、Excelの関数(COUNTIFSなど)を利用しても可能ですが、ピボットテーブルの作成機能を利用したほうが簡単です。
まず、リボンの「挿入」をクリックし、「ピボットテーブル」をクリックします。 すると、「ピボットテーブルの作成」ウィンドウが開くので、「テーブルまたは範囲を選択」ラジオ・ボタンをオンにし、「テーブル/範囲」入力欄の右のボタンをクリックして、データの範囲(セルB2からC17まで)をドラッグします。 「既存のワークシート」ラジオ・ボタンをオンにし、「テーブル/範囲」入力欄の右のボタンをクリックして、余白(セルE2)をクリックします。
すると、「ピボットテーブルビルダー」ウィンドウ(Windowsの場合は「ピボットテーブルのフィールドリスト」ウィンドウ)が開くので、「gender」を「行」入力欄にドラッグ・アンド・ドロップし、「physical」を「列」入力欄にドラッグ・アンド・ドロップし、「gender」を「値」入力欄にドラッグ・アンド・ドロップします。
すると、ピボットテーブルが作成されます。
ただし、この表はデータの個数を数えているのではなく、データの合計をしています。 これを切り替えるために、表の左上(セルE2)を右クリックして「フィールドの設定」をクリックします。
「集計の方法」の「データの個数」をクリックして、「OK」ボタンをクリックします。
すると、データの個数を数えた表に切り替わります。
次に、このピボットテーブルをコピー・アンド・ペーストして、クロス集計表らしく直しましょう。 ただし、ピボットテーブル全体をドラッグしてから右クリックしても、「コピー」が選べないので、メニューバーで「編集」→「コピー」とクリックします。 あとは、ペースト先(例えばセルJ2)を右クリックし、「形式を選択してペースト」をクリックし、「数値」をクリックします。
不要な文字を消し、「1」を「男子」、「2」を「女子」などと書き換えます。 最後に、読みやすくするために罫線を引きます。 これで、クロス集計表が完成します。
相対度数を追加したクロス集計表も作成しましょう。 相対度数は横比で計算することにします。
まず、クロス集計表を余白(例えばセルO2)にコピー・アンド・ペーストします。 ペーストは、値のみにしてください。
表を1行おきにするために、空けたい範囲(セルO5からR5まで)をドラッグし、右クリックして「挿入」をクリックします。
「下方向にシフト」をクリックして、「OK」ボタンをクリックします。
これを繰り返して、表を1行おきにします。
セルP5に数式=P4/$R4を入力し、セルの表示形式をパーセンテージにします。 このセルを1行おきにコピー・アンド・ペーストすると、すべての相対度数が計算されます。
罫線を引いて読みやすくすれば、完成です。
クロス集計表を分かりやすくするために、グラフ化してみましょう。 ここでは、3次元の棒グラフを作成します。
まず、クロス集計表のラベルとデータの範囲(セルJ3からL5まで)をドラッグします。 そして、リボンの「挿入」をクリックし、「縦棒」をクリックし、「3-D縦棒グラフ」をクリックします。 すると、3次元の棒グラフが表示されます。
上側のグラフ・タイトルをダブル・クリックし、「小五児童の男女と体育の好き嫌い」に変更します。 (Windowsの場合は、グラフ・タイトルがないので、リボンの「レイアウト」をクリックし、「グラフタイトル」→「グラフの上」とクリックします。) また、下側(Windowsの場合は右側)の凡例をクリックし、deleteキーで削除します。
リボンの「グラフのデザイン」をクリックし、「グラフ要素を追加」→「軸ラベル」→「第1横軸」とクリックして、(Windowsの場合は、「ラベル」項目で「軸ラベル」→「主横軸ラベル」→「軸ラベルを軸の下に配置」とクリックして、)横軸ラベルを「体育」に変更します。 同様に、「グラフ要素を追加」→「軸ラベル」→「第1縦軸」とクリックして、(Windowsの場合は、「ラベル」項目で「軸ラベル」→「主縦軸ラベル」→「軸ラベルを垂直に配置」とクリックして、)縦軸ラベルを「人数(人)」に変更します。 軸ラベルを縦書きにするには、軸ラベルを右クリックし、「軸ラベルの書式設定」をクリックし、「タイトルのオプション」→「サイズとプロパティ」とクリックして、「テキストの方向」を「垂直」にします。 同様に、「グラフ要素を追加」→「軸ラベル」→「奥行き」とクリックして、(Windowsの場合は、「ラベル」項目で「軸ラベル」→「奥行き軸ラベル」→「軸ラベルを水平に配置」とクリックして、)奥行き軸ラベルを「男女」に変更します。 軸ラベルを水平にするには、軸ラベルを右クリックし、「軸ラベルの書式設定」をクリックし、「タイトルのオプション」→「サイズとプロパティ」とクリックして、「テキストの方向」を「水平」にします。 これで、3次元の棒グラフが完成します。
ある小学校で、2年生と5年生の合計75人の児童に対して、以下のアンケートを実施したとします。
小学生の学習塾への通学アンケート
問1 あなたの学年を教えてください。
( )年生
問2 あなたは学習塾に通っていますか。
1. 通っている 2. 通っていない
このアンケートの結果をまとめたExcelファイルをダウンロードしてください。
child | year | school |
---|---|---|
1 | 5 | 2 |
2 | 2 | 1 |
3 | 2 | 2 |
... | ... | ... |
75 | 5 | 1 |
(1)このデータのクロス集計表を作成してください。
(2)相対度数を追加したクロス集計表も作成してください。 相対度数は横比で計算してください。
(3)このクロス集計表を3次元の棒グラフにしてください。
今日の演習6の答案(Excelファイル)をメールで提出してください。 差出人は学内のメール・アドレス(学生番号@cis.twcu.ac.jp)とし、宛先はkonishi@cis.twcu.ac.jpとします。 メールの本文には、学生番号、氏名、科目名、授業日(11月1日)を明記してください。
ピボットテーブルを使わず、Excelの関数だけでクロス集計表を作成するには、以下のようにします。
まず、変数 x (今回は男女)の項目(1, 2)を縦に並べ、変数 y (体育)の項目(1, 2)を横に並べた表を入力します。
そして、COUNTIFS関数で、変数 x の項目と変数 y の項目が、同時に一致するデータの個数を数えます。 この場合なら、セルF11に
=COUNTIFS($B$3:$B$17,$E11,$C$3:$C$17,F$10)
と入力して、F11からG12までコピー・アンド・ペーストします。
後は、セルE9からG12までを、余白にコピー・アンド・ペースト(値をペースト)し、1や2を男子や女子に書き直します。