【データリテラシー】第9回 分割表とクロス集計
多変量データ
ある集団に対して2種類以上の観測を行って得られた多変数のデータを多変量データ(多次元データ)という。
ここでは特に 2変数のデータである2変量データ(2次元データ)を考える。 2変量データを見やすくするには分割表と散布図の二通りの方法がある。
分割表
2変量データの片方の変数のとりうる値を縦方向(列方向)の項目、もう片方の変数のとりうる値を横方向(行方向)の項目にして、縦と横の項目が交差(クロス)するマスに対応する度数を数えて入れた表を分割表という。
変数は質的変数だと作りやすいが、必ずしも質的変数である必要はない。 量的変数であっても離散型の場合はそのまま使ってもよいし、連続型の場合は度数分布表のように階級ごとに分けてもよい。
分割表の一番左の項目のラベルの列を表側、一番上の項目のラベルの行を表頭という。
表側の項目数が $s$ 個、表頭の項目数が $t$ 個の場合、$s\times t$ 分割表という。
「合計」の欄は項目数には含めない。 列や行の合計は周辺度数という。 列の周辺度数の合計と行の周辺度数の合計は総数に一致する。
3×6 分割表の例
以下は データセット2 から求めた学年とコース別の学生数の分割表である。
クロス集計表
分割表において度数ではなく、合計、平均、標準偏差などを集計した表をクロス集計表という。 ただし、分割表とクロス集計表はあまり区別されていないようである。
3×6 クロス集計表の例
以下は データセット2 から求めた学年とコース別の学生一人当たりの授業外学修時間の平均のクロス集計表である。
周辺度数にあたるところは「合計」ではなく「平均」であることに注意してほしい。
例えば、「経営」コースの「平均」は 98.3 時間となっているが、これは元のデータにおいて「経営」コース全体の平均を求めたものになっている。 2年生、3年生、4年生のそれぞれの平均の平均 (99.7+95.6+98.7)/3=98.0 時間ではない。 この違いは各学年の人数が異なることから生じる。
ピボットテーブル
分割表やクロス集計表を作るために表計算ソフトにはピボットテーブルという便利な機能がある。
元となる生データは次のように一番上の行に変数のラベルがあり、その下の列方向に各変数の観測値が並んでいるものとする。 このデータからピボットテーブルを使って分割表やクロス集計表を作成する。
3変量の生データ
A | B | C | |
---|---|---|---|
1 | 変数1 | 変数2 | 変数3 |
2 | $x_{1}$ | $y_{1}$ | $z_{1}$ |
3 | $x_{2}$ | $y_{2}$ | $z_{2}$ |
4 | $x_{3}$ | $y_{3}$ | $z_{3}$ |
⋮ | ⋮ | ⋮ | ⋮ |
ピボットテーブルの作成
ピボットテーブルの編集
一度作ったピボットテーブルは編集して項目を変更することができる。
ピボットテーブル上で右クリックしてコンテキストメニューから [プロパティ]
を選択すると「ピボットテーブルのレイアウト」のダイアログが開くので、ここで項目を変更する。
データの更新
ピボットテーブルの元のデータの値を更新してもピボットテーブルに自動的には反映されないため、手動で更新させる必要がある。
ピボットテーブルで右クリックしてコンテキストメニューから [更新]
を選択するとピボットテーブルが更新される。
演習:分割表の作成
演習:平均のクロス集計表の作成
前の演習のピボットテーブルを編集して授業外学修時間の平均のクロス集計表を作成する。
「行フィールド」「列フィールド」「データフィールド」にその他の項目を追加するとどうなるだろうか。 色々試してみてほしい。
課題
データセット1 において、年齢と性別で人数を数えた分割表を作りなさい。 表頭を「年齢」、表側を「性別」とする。
また、同じデータセットで年齢と性別で身長の平均を求めたクロス集計表を作りなさい。
作成したファイルは ODF 表計算ドキュメント(拡張子 .ods)で提出すること。