datamash 命令行数据统计
datamash 对 TSV/CSV 做分组聚合、统计量计算、转置和交叉表,适合快速分析日志、CSV 导出和命令行数据。它按列操作,常与 awk、sort、cut 组合。
支持 sum、mean、median、mode、stddev、variance、min、max、count、unique、first、last 等操作。
按列求和:
datamash sum 3 < data.tsv
分组聚合:
datamash -g 1 sum 3 mean 4 < data.tsv
排序后分组:
datamash -s -g 1 count 1 sum 3 < data.tsv
CSV 输入:
datamash --header-in --csv -g 1 sum 3 < data.csv
统计描述:
datamash mean 1 median 1 stddev 1 min 1 max 1 < numbers.txt
交叉表:
datamash -s crosstab 1,2 < data.tsv
转置:
datamash transpose < data.tsv
--csv 或 -t,。-g 可能把相同 key 分成多组,使用 -s。cut 一致,不要按 0 开始。--header-in,表头被当数据。