加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

nlp – 文本挖掘 – 最常见的单词,规范化

发布时间:2020-12-14 04:40:40 所属栏目:大数据 来源:网络整理
导读:我是一名研究员,拥有约17,000份自由文本文件,其中约30-40%与我的结果相关.是否有一个开源工具我可以用来确定与结果相关的最常见的单词(甚至是短语,但不是必需的),对已经发生的单词的频率进行标准化?所有文件都是由医护人员编写的,因此规范化很重要,因为两
我是一名研究员,拥有约17,000份自由文本文件,其中约30-40%与我的结果相关.是否有一个开源工具我可以用来确定与结果相关的最常见的单词(甚至是短语,但不是必需的),对已经发生的单词的频率进行标准化?所有文件都是由医护人员编写的,因此规范化很重要,因为两种文件都有技术语言,并且还想要筛选出“the”,“it”等字样.

我想要做的是使用正则表达式或NLP构建一个工具,然后使用这些单词来识别基于新文档的结果.我不打算花大量的时间来定制NLP工具,所以具有合理准确性的东西就足够了.

我知道SAS,SQL(使用postgreSQL)和Python,但可能会在R中得到.我以前没有做过任何NLP.有没有我可以使用的软件没有太陡峭的学习曲线?谢谢!

解决方法

tool I can use to determine the most common words... 
  ... so something with reasonable accuracy is good enough.

我建议先尝试使用unix文本工具.
从coursera Natural Language Processing课程Word Tokenization Lesson,Youtube链接是here.一个简单的教程here.

为此,我们使用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

管道你的命令再次排序,以查看最常用的,最常见的单词.

问题在于:’和’和’和’计算两次

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

将所有单词再次更改为小写和相同的管道.这将为您提供文件中最常用的单词.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读