last update: 2004年11月15日

xtcross.sh

概要:クロス集計表の作成

書式:xtcross.sh -k 行になる項目名 -f 列になる項目名 -d セルの値の項目名 [-i 入力ファイル名] [-o 出力ファイル名] [-T ワークディレクトリ名] [-V] [-h]

-V : スクリプト内部のコマンド完了メッセージを表示させる。
-h : ヘルプの表示

例1)日別商品別の金額クロス集計

入力データ コマンド 出力データ
日付 商品 金額
20041101
20041101
20041101
20041102
20041102
20041102
野菜
果物
牛肉
野菜
果物
牛肉
100
200
300
120
130
140
xtcross.sh -k 日付 -f 商品 -d 金額
日付 野菜 果物 牛肉
20041101
20041102
100
120
200
130
300
140

日付を行(-k)、商品を列(-f)とするクロス集計表を作成する。各行列には金額(-d)がセットされる。列項目名は-fで指定した項目の値となる。

例2)存在しない行列はNULL値がセットされる

入力データ コマンド 出力データ
日付 商品 金額
20041101
20041101
20041101
20041102
20041102
野菜
果物
牛肉
野菜
牛肉
100
200
300
120
140
xtcross.sh -k 日付 -f 商品 -d 金額
日付 野菜 果物 牛肉
20041101
20041102
100
120
200
*
300
140

20041102の果物は存在しない。クロス集計表にするとNULL値がセットされる。

例5)パイプで連結して

#!/usr/bin/env bash

xtagg -k 日付,商品 -f 金額 -c sum -i input.xt |
xtcross.sh -s 日付 -f 商品 -d 金額 |
xtcut -f 日付,野菜,牛肉 -o output.xt

注意点)