我有一个包含以下结构的平面文件:
A1 B1 C1 D1 E1 F1 G1
A2 B2 C2 D2 E2 F2 G2
A3 B3 C3 D3 E3 F3 G3
该文件有大约100 万行。
我想生成以下统计信息:
- 文件中的行数。
- 特定行中的唯一记录数(例如 B)。
- 按F 行排序并创建一个包含该行中前 n 条记录的文件。
进行此分析的最佳方法是什么?我目前正在使用Mac OSX,因此首选 Linux/Mac 解决方案。
在 bash(你的 mac 命令行 shell)中很容易做到。
就像是:
# 1. row count
wc -l filename
# 2. uniq count in col 1
cut -d " " -f 1 <filename> | sort | uniq | wc -l
# 3. top n uniq values in col 6, and their counts
cut -d " " -f 6 <filename> | sort | uniq -c | sort -nr | head -n <numrows>