tool I can use to determine the most common words...
... so something with reasonable accuracy is good enough.
我建议先尝试使用 unix 文本工具。来自 coursera自然语言处理课程 Word Tokenization Lesson,Youtube 链接在这里。这里有一个简单的教程。
为此,我们使用tr、uniq和sort 。如果您以前使用过 unix 文本工具,这里是完整的命令。
tr -sc 'A-Z' 'a-z' < *.txt | tr -sc 'A-Za-z' '\n' | sort | uniq -c | sort -n -r
否则下面是每个部分的解释。
tr -sc 'A-Za-z' '\n' < filename.txt
此命令需要 filename.txt 更改每个单词,本质上是在每个单词后添加新行。
tr -sc 'A-Za-z' '\n' < *.txt
与上面相同,但目录中的所有 txt 文件。
tr -sc 'A-Za-z' '\n' < *.txt | sort
管道命令进行排序。首先会以很多“a”字开头。
tr -sc 'A-Za-z' '\n' < *.txt | sort | uniq -c
管道排序结果到 uniq 命令并计算它。
tr -sc 'A-Za-z' '\n' < *.txt | sort | uniq -c | sort -n -r
管道您的命令再次排序以查看最常用、最常用的单词。
这里的问题:'and' 和 'And' 计数了两次
tr -sc 'A-Z' 'a-z' < *.txt | tr -sc 'A-Za-z' '\n' | sort | uniq -c | sort -n -r
或者
tr '[:upper:]' '[:lower:]' < *.txt | tr -sc 'A-Za-z' '\n' | sort | uniq -c | sort -n -r
再次将所有单词更改为小写和相同的管道。这将为您提供文件中最常用的单词。