G**Y 发帖数: 33224 | 1 【 以下文字转载自 PhotoGear 讨论区 】
发信人: GGYY (唧唧歪歪), 信区: PhotoGear
标 题: 万佛,请推荐word frequency tool?
发信站: BBS 未名空间站 (Thu Dec 16 00:24:04 2010, 美东)
MS Word
和
Acrobat PDF
的,
统计一片文章里,词汇频率的工具。
谢谢。 |
S*A 发帖数: 7142 | 2 Available Packages
Name : wf
Arch : x86_64
Version : 0.41
Release : 4.fc12
Size : 17 k
Repo : fedora
Summary : Simple word frequency counter
URL : http://www.async.com.br/~marcelo/wf/
License : GPLv2
Description : wf scans a text file and counts the frequency of words through
the
: whole text.
然后就是如何把 text 提取出来了,这个应该很简单。
有 pdf2txt 之类的。实在不行 acrobat 可以 save as text. |
x**m 发帖数: 941 | 3 我有个利用tr, sed和uniq -c这个参数的用法。大家看看有没有什么问题。
cat TEXT_FILE | tr '[:upper:]' '[:lower:]' | sed "s/don't/do not/" | tr -cs
'[:lower:][:upper:]' '[\n*]' | sort | uniq -c | sort -nr | less
先把大写字母变小写,然后替换特别的缩写,继续把每个词变成一行,按字母表排序,
统计字频,根据字频再排序。
已知的问题是添加很多sed处理一些缩写,否则don't会被分成don和t, it's会被分成it
和s。上次去Google面试SRE被问到写个程序来实现这个功能的时候我给了这个解法,但
是好像面试那人不太喜欢。 |
a****9 发帖数: 418 | 4 google是不是喜欢别人回答用mapreduce的wordcount来作
cs
it
【在 x**m 的大作中提到】 : 我有个利用tr, sed和uniq -c这个参数的用法。大家看看有没有什么问题。 : cat TEXT_FILE | tr '[:upper:]' '[:lower:]' | sed "s/don't/do not/" | tr -cs : '[:lower:][:upper:]' '[\n*]' | sort | uniq -c | sort -nr | less : 先把大写字母变小写,然后替换特别的缩写,继续把每个词变成一行,按字母表排序, : 统计字频,根据字频再排序。 : 已知的问题是添加很多sed处理一些缩写,否则don't会被分成don和t, it's会被分成it : 和s。上次去Google面试SRE被问到写个程序来实现这个功能的时候我给了这个解法,但 : 是好像面试那人不太喜欢。
|
x**m 发帖数: 941 | |
J********a 发帖数: 5208 | 6 mapreduce 不过就是
cat INPUT | mapper | sort | reducer > output
只不过 mapper/sort/reducer都是分布的。
【在 x**m 的大作中提到】 : 没有用过mapreduce.
|