[小西ホームページ]   [目次・索引]   [前の授業]   [次の授業]

情報処理技法(統計解析)第6回

目次
索引

クロス集計表

クロス集計表とは

前回の授業では、2次元データを散布図にしました。 ただ、散布図にできるのは、量的データの場合です。 今日は、質的データの場合を考えます。

ここで、例として、ある小学校の5年生に対して、以下のようなアンケート調査が行われたとしましょう。

小五男女の体育の好き嫌いアンケート

問1 あなたは男女のどちらですか。

1. 男子      2. 女子

問2 あなたは体育が好きですか。

1. 好き      2. 嫌い

そして、以下のようなアンケート結果が得られたとします。

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=女子)は質的データで、体重は量的データです。

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によるクロス集計表(1)

ピボットテーブルの作成

それでは、Excelを利用して、クロス集計表を作成しましょう。 次のExcelファイルをダウンロードしてください。

stat_06_data.xlsx
小五児童(child)の男女(gender)と体育(physical)の好き嫌い
child gender physical
1 2 2
2 2 1
3 2 1
... ... ...
15 1 2

Excelでクロス集計表を作成するには、Excelの関数(COUNTIFSなど)を利用しても可能ですが、ピボットテーブルの作成機能を利用したほうが簡単です。

まず、リボンの「挿入」をクリックし、「ピボットテーブル」をクリックします。 すると、「ピボットテーブルの作成」ウィンドウが開くので、「テーブルまたは範囲を選択」ラジオ・ボタンをオンにし、「テーブル/範囲」入力欄の右のボタンをクリックして、データの範囲(セルB2からC17まで)をドラッグします。 「既存のワークシート」ラジオ・ボタンをオンにし、「テーブル/範囲」入力欄の右のボタンをクリックして、余白(セルE2)をクリックします。

クロス集計表の作成(1)
クロス集計表の作成(1)

すると、「ピボットテーブルビルダー」ウィンドウ(Windowsの場合は「ピボットテーブルのフィールドリスト」ウィンドウ)が開くので、「gender」を「行」入力欄にドラッグ・アンド・ドロップし、「physical」を「列」入力欄にドラッグ・アンド・ドロップし、「gender」を「値」入力欄にドラッグ・アンド・ドロップします。

クロス集計表の作成(2)
クロス集計表の作成(2)

すると、ピボットテーブルが作成されます。

クロス集計表の作成(3)
クロス集計表の作成(3)

ただし、この表はデータの個数を数えているのではなく、データの合計をしています。 これを切り替えるために、表の左上(セルE2)を右クリックして「フィールドの設定」をクリックします。

「集計の方法」の「データの個数」をクリックして、「OK」ボタンをクリックします。

クロス集計表の作成(4)
クロス集計表の作成(4)

すると、データの個数を数えた表に切り替わります。

クロス集計表の作成(5)
クロス集計表の作成(5)

相対度数の計算

次に、このピボットテーブルをコピー・アンド・ペーストして、クロス集計表らしく直しましょう。 ただし、ピボットテーブル全体をドラッグしてから右クリックしても、「コピー」が選べないので、メニューバーで「編集」→「コピー」とクリックします。 あとは、ペースト先(例えばセルJ2)を右クリックし、「形式を選択してペースト」をクリックし、「数値」をクリックします。

クロス集計表の作成(6)
クロス集計表の作成(6)

不要な文字を消し、「1」を「男子」、「2」を「女子」などと書き換えます。 最後に、読みやすくするために罫線を引きます。 これで、クロス集計表が完成します。

クロス集計表(1)
クロス集計表(1)

相対度数を追加したクロス集計表も作成しましょう。 相対度数は横比で計算することにします。

まず、クロス集計表を余白(例えばセルO2)にコピー・アンド・ペーストします。 ペーストは、値のみにしてください。

クロス集計表の作成(7)
クロス集計表の作成(7)

表を1行おきにするために、空けたい範囲(セルO5からR5まで)をドラッグし、右クリックして「挿入」をクリックします。

「下方向にシフト」をクリックして、「OK」ボタンをクリックします。

クロス集計表の作成(8)
クロス集計表の作成(8)

これを繰り返して、表を1行おきにします。

クロス集計表の作成(9)
クロス集計表の作成(9)

セルP5に数式=P4/$R4を入力し、セルの表示形式をパーセンテージにします。 このセルを1行おきにコピー・アンド・ペーストすると、すべての相対度数が計算されます。

クロス集計表の作成(10)
クロス集計表の作成(10)

罫線を引いて読みやすくすれば、完成です。

クロス集計表(2)
クロス集計表(2)

Excelによる3次元棒グラフ

クロス集計表を分かりやすくするために、グラフ化してみましょう。 ここでは、3次元の棒グラフを作成します。

まず、クロス集計表のラベルとデータの範囲(セルJ3からL5まで)をドラッグします。 そして、リボンの「挿入」をクリックし、「縦棒」をクリックし、「3-D縦棒グラフ」をクリックします。 すると、3次元の棒グラフが表示されます。

3次元棒グラフの作成(1)
3次元棒グラフの作成(1)

上側のグラフ・タイトルをダブル・クリックし、「小五児童の男女と体育の好き嫌い」に変更します。 (Windowsの場合は、グラフ・タイトルがないので、リボンの「レイアウト」をクリックし、「グラフタイトル」→「グラフの上」とクリックします。) また、下側(Windowsの場合は右側)の凡例をクリックし、deleteキーで削除します。

3次元棒グラフの作成(2)
3次元棒グラフの作成(2)

リボンの「グラフのデザイン」をクリックし、「グラフ要素を追加」→「軸ラベル」→「第1横軸」とクリックして、(Windowsの場合は、「ラベル」項目で「軸ラベル」→「主横軸ラベル」→「軸ラベルを軸の下に配置」とクリックして、)横軸ラベルを「体育」に変更します。 同様に、「グラフ要素を追加」→「軸ラベル」→「第1縦軸」とクリックして、(Windowsの場合は、「ラベル」項目で「軸ラベル」→「主縦軸ラベル」→「軸ラベルを垂直に配置」とクリックして、)縦軸ラベルを「人数(人)」に変更します。 軸ラベルを縦書きにするには、軸ラベルを右クリックし、「軸ラベルの書式設定」をクリックし、「タイトルのオプション」→「サイズとプロパティ」とクリックして、「テキストの方向」を「垂直」にします。 同様に、「グラフ要素を追加」→「軸ラベル」→「奥行き」とクリックして、(Windowsの場合は、「ラベル」項目で「軸ラベル」→「奥行き軸ラベル」→「軸ラベルを水平に配置」とクリックして、)奥行き軸ラベルを「男女」に変更します。 軸ラベルを水平にするには、軸ラベルを右クリックし、「軸ラベルの書式設定」をクリックし、「タイトルのオプション」→「サイズとプロパティ」とクリックして、「テキストの方向」を「水平」にします。 これで、3次元の棒グラフが完成します。

3次元棒グラフ(1)
3次元棒グラフ(1)

演習6

ある小学校で、2年生と5年生の合計75人の児童に対して、以下のアンケートを実施したとします。

小学生の学習塾への通学アンケート

問1 あなたの学年を教えてください。

(    )年生

問2 あなたは学習塾に通っていますか。

1. 通っている      2. 通っていない

このアンケートの結果をまとめたExcelファイルをダウンロードしてください。

stat_06_report.xlsx
小学校児童(child)の学年(year)と学習塾(school)への通学
child year school
1 5 2
2 2 1
3 2 2
... ... ...
75 5 1

(1)このデータのクロス集計表を作成してください。

クロス集計表(3)
クロス集計表(3)

(2)相対度数を追加したクロス集計表も作成してください。 相対度数は横比で計算してください。

クロス集計表(4)
クロス集計表(4)

(3)このクロス集計表を3次元の棒グラフにしてください。

3次元棒グラフ(2)
3次元棒グラフ(2)

レポート課題

今日の演習6の答案(Excelファイル)をメールで提出してください。 差出人は学内のメール・アドレス(学生番号@cis.twcu.ac.jp)とし、宛先はkonishi@cis.twcu.ac.jpとします。 メールの本文には、学生番号、氏名、科目名、授業日(11月1日)を明記してください。


付録

Excelによるクロス集計表(2)

ピボットテーブルを使わず、Excelの関数だけでクロス集計表を作成するには、以下のようにします。

まず、変数 x (今回は男女)の項目(1, 2)を縦に並べ、変数 y (体育)の項目(1, 2)を横に並べた表を入力します。

クロス集計表の作成(11)
クロス集計表の作成(11)

そして、COUNTIFS関数で、変数 x の項目と変数 y の項目が、同時に一致するデータの個数を数えます。 この場合なら、セルF11に

=COUNTIFS($B$3:$B$17,$E11,$C$3:$C$17,F$10)

と入力して、F11からG12までコピー・アンド・ペーストします。

クロス集計表の作成(12)
クロス集計表の作成(12)

後は、セルE9からG12までを、余白にコピー・アンド・ペースト(値をペースト)し、1や2を男子や女子に書き直します。


参考文献


[小西ホームページ]   [目次・索引]   [前の授業]   [次の授業]

2017年11月1日更新
小西 善二郎 <konishi@cis.twcu.ac.jp>
Copyright (C) 2017 Zenjiro Konishi. All rights reserved.