Excel を使ったクロス集計

ピボットテーブル

クロス集計を行いたい場合、SAS では freq procedure、R では table 関数で簡単に集計できますが、Excel だとピボットテーブルを使う様です。

1. 集計対象のデータを選択し、ピボットテーブルを選択します
データの選択とピボットテーブル

2. 出力場所を指定し、必要があればデータの範囲を修正します
出力場所の指定

3. 作成されたピボットテーブルに対して、行・列・表の値を指定します
ピボットテーブル形式の指定

集計の方法も選べます
集計の方法

計算の種類

R


  sex <- c(
  "男", "男", "男", "男", "男", "男", "男", "男",
  "男", "男", "男", "男", "男", "男", "男", 
  "女", "女", "女", "女", "女", "女", "女", "女", 
  "女", "女", "女", "女", "女", "女"
  )

  ae <- c(
  "有", "無", "無", "有", "有", "有", "無", "無", 
  "有", "無", "有", "有", "有", "無", "無", 
  "有", "有", "無", "無", "有", "有", "有", "無", 
  "有", "無", "有", "有", "無", "有"
  )

  print(t <- table(sex, ae))
  signif(t / apply(t, 1, sum), 2)
  

SAS


  data p;
  input sex $ ae $ @@;
  cards;
  男 有 男 無 男 無 男 有 男 有 男 有 男 無 男 無
  男 有 男 無 男 有 男 有 男 有 男 無 男 無
  女 有 女 有 女 無 女 無 女 有 女 有 女 有 女 無
  女 有 女 無 女 有 女 有 女 無 女 有
  ;
  proc freq;
  table sex * ae;
  run;
  

履歴

  • 2009/06/12 作成