平面文件数据分析

发布于 2024-11-05 11:57:50 字数 448 浏览 8 评论 0原文

我有一个由以下结构组成的平面文件

A1 B1 C1 D1 E1 F1 G1  
A2 B2 C2 D2 E2 F2 G2  
A3 B3 C3 D3 E3 F3 G3

该文件大约有100 万行

我想生成以下统计信息:

  1. 文件中的行数
  2. 特定中的唯一记录数(例如B)。
  3. 按行排序 F 并创建一个包含该行中前 n 条记录的文件。

进行此分析的最佳方法是什么?我目前使用的是 Mac OSX,因此首选 Linux/Mac 解决方案。

I have a flat file that consists of the following structure:

A1 B1 C1 D1 E1 F1 G1  
A2 B2 C2 D2 E2 F2 G2  
A3 B3 C3 D3 E3 F3 G3

This file has around 1 million rows.

I would like to generate the following statistics:

  1. Number of rows in the file.
  2. Number of unique records in a particular row (e.g. B).
  3. Sort by row F and create a file containing the top n records in that row.

What would be the best way of doing this analysis? I'm currently using Mac OSX, so a Linux/Mac solution would be preferred.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

轻许诺言 2024-11-12 11:57:50

在 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>

Pretty easy to do in bash (your mac command line shell).

Something like:

# 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>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文