Dmeans - 記述統計

形式

Dmeans [ -Fr ] [ -g key-field-list ] [ -k key-flags ] field-list [ input-file.. ]

DmnDmeansの短縮形(UNIXのみ)。

説明

Dmeansは、 field-list で与えられたフィールドの基本統計値を計算する。 出力は統計D-レコードで、そのフィールド名は

identifier.field-name

という形をしており、 identifier は"n"、"sum"、"min"、"max"、"avg"または"std" のいずれかであり、 field-namefield-list のうちのひとつで、統計値を計算したフィールド名を示す。

identifier の意味は次のとおり:

n
計算を行った値の個数
sum
値の総和
min
最小値
max
最大値
avg
平均値; すなわちsum/n
std
標準偏差

一般に、統計目的のためにリピーティングフィールドのあるD-レコードを 使用することはない。 しかし、入力レコードにリピーティングフィールドがあった場合、 他のD-コマンドと異なり、 Dmeans 例えば、 最初のレコードに"a"フィールドが2つあり、 2番目のレコードに1つあり、 3番目のレコードに1つもなかった場合、 出力統計レコードの"n.a"フィールドの値は3となる。 結果としては、3レコードがそれぞれ1つづ"a"をもっていた場合と変わりない。

入力ファイルが複数あった場合、 Dmeans はそれらを連続した入力として扱う。 ただし、オプション -F が指定されると、 Dmeans は各入力ファイルごとに統計レコードを出力する。 この時、"filename"フィールドを各統計レコードに付加する。

オプション -g key-field-list を指定すると、 Dmeans はグループ化フィールドの値のシーケンスブレークごとに 統計レコードを出力する。 すなわち、与えられたフィールドのキー値が前のレコードと異なる場合、 または、すべての入力ファイルの終わりに出力する。 これらのグループ化キーフィールドは、出力レコードに付加される。 通常、このオプションは 同じ key-field-list. で Dsort した後使用するが、それが必須というわけではない。

オプション -r を指定すると、 Dmeans は各入力レコードごとに統計レコードを出力する。 この場合、 key-field-list に含まれていない全フィールドが出力レコードに付加される。 このオプションを使用した場合、 -g オプションは使えない。 通常このオプションは、 リピーティングフィールドを持ったレコードに対して使用する。

出力レコード

出力レコードは、次のフィールドをこの順に含む。

filename
オプション -F の指定されたとき; 値は、シェルから渡された入力ファイル名である。 入力ファイルが標準入力の場合このフィールドは付加されない。
グループ化キーフィールド群s
オプション -gが指定されたとき、 フィールド順は key-field-list に指定された順による。 また、値はキーフラグによっては変更される。
その他のフィールド群
オプション -r が指定されたとき; 入力レコード中で field-list; にないフィールド; 入力レコード中でのフィールド順が保存される。
field-listの最初のフィールドの統計値フィールド群
identifier.field-name の形をしている。 本節後半参照。
field-listの2番目以降のフィールドの統計値フィールド群
field-list 中の各フィールドの統計フィールドが続く。

統計フィールド群は各被統計フィールドごとに次の順である。

n.field-name
必ず存在。
sum.field-name
n が0より大のとき。
avg.field-name
n が0より大のとき。
min.field-name
n が0より大のとき。
max.field-name
n iが0より大のとき。
std.field-name
n が1より大のとき。

オプション

-F
入力ファイルは個々に処理される; 統計レコードは各入力ファイルの終わりで出力される。 また、"filename"フィールドが各出力レコードに付加される。
-g key-field-list
グループ処理; 統計レコードは同じキー値を持つレコードグループごとに 出力される。
-k key-flags
key-field-listの省略時キーフラグ。 マニュアル Dintro参照。
-r
レコード統計; 各入力レコード毎に統計レコードが出力される。

メッセージ

マニュアル D_msg参照。

参照

DintroDfreqD_msg

AUTHOR

MIYAZAWA Akira


miyazawa@nii.ac.jp
2003