安装

参考:https://www.cnblogs.com/zrmw/p/10869325.html

分词:注意先分句再分词,这些对象均来自nltk.tokenize库

  1. word_tokenize
      导入nltk的tokenize库后,tokens = nltk.word_tokenize(sentence)语句进行分词操作,sentence为待处理的字符串。返回一个列表。该方法要求被处理的字符串本身各个词语之间有空格,能处理如don't, they'll等缩写词的情况。
  2. TweetTokenizer
      Twitter-aware,按空格进行分词,同时针对推文一些特性,去除@用户名,保留表情等一些特殊符号。
      分两种:
      (1)不带参数token=TweetTokenizer().tokenize(sentence)处理。
          输入"This is a coooool #dummysmiley: :-) :-P <3 and some arrows < > -> <--"
          输出['This', 'is', 'a', 'cooool', '#dummysmiley', ':', ':-)', ':-P', '<3', 'and', 'some', 'arrows', '<', '>', '->', '<--']能够拆分无效用的标点符号。
      (2)带参数token = TweetTokenizer(strip_handles=True, reduce_len = True).
          输入@remy: This is waaaaayyyy too much for you!!!!!!
          输出[':', 'This', 'is', 'waaayyy', 'too', 'much', 'for', 'you', '!', '!', '!']
          当一个词中相同字符连续出现3次以上,就只保留3个。设置strip_handles = True会删去@xxx。
  3. MWETokenizer
      tokenizer = MWETokenizer([('a', 'little'), ('a', 'little', 'bit'), ('a', 'lot')])
      输入tokenizer.tokenize('In a litte or a litte bit or a lot in spite of'.split()); tokenizer.add_mwe(('in', 'spite', 'of'))
      输出['In', 'a_little', 'or', 'a_little_bit', 'or', 'a_lot', 'in_spite_of']
      该方法可对已经先保留的一些短语,或者组合,进行重组(对一些专有词可以先进行保留,如F-16,最后重组已保留-)。
  4. RegexpTokenizer 
      使用到正则表达式进行分词,如对一些金钱表示或者其他非空白序列。
      tokenizer = RegexpTokenizer('\w+|$[\d.]+|\S+')
      输入"Good muffins cost $3.88\n in New York. Please buy me\n two of them.\n\n Thanks."
      输出['Good', 'muffins', 'cost', '$3.88', 'in', 'New', 'York', '.', 'Please', 'buy', 'me', 'two', 'of', 'them', '.', 'Thanks', '.']
  5. StanfordTokenizer
      按空格进行分词,对于$4.28之类的,将符号与数字分开。
      输入“Good muffins cost \(3.88\n in New York. Please buy me\n two of them.\n Thanks."   输出['Good', 'muffins', 'cost', '\)', '3.88', 'in', 'New', 'York', '.', 'Please', 'buy', 'me', 'two', 'of', 'them', '.', 'Thanks', '.']

词性标注

具体的符号意义,参考:https://www.cnblogs.com/elpsycongroo/p/9369111.html

情感词典

nltk集成了情感词典SentiwordNet,使用方法参考:https://stackoverflow.com/questions/38263039/sentiwordnet-scoring-with-python

参考

https://www.cnblogs.com/kylinsblog/p/7762675.html

吐槽

感觉官方文档写的是真烂,连一个详细的API说明文档都没有。

安装和使用nltk的更多相关文章

  1. 安装numpy、nltk问题汇总

    系统环境是win7(64bit)+python3.4(64bit)+numpy1.82+vs2012 1.假设用sourceforge上编译好的32bit的exe安装,会提示'python versi ...

  2. windows 10安装gensim、nltk

    一.安装gensim 1.什么事gensim gensim是一个python的科学库,gensim包含了TF-IDF.随机投影.word2vec和document2vec算法的实现,分层Dirchle ...

  3. win安装NLTK出现的问题

    一.今天学习Python自然语言处理(NLP processing) 需要安装自然语言工具包NLTK Natural Language Toolkit 按照教程在官网https://pypi.pyth ...

  4. Mac OS10.9 下python开发环境(eclipse)以及自然语言包NLTK的安装与注意

    折腾了大半天,终于把mbp上python自然语言开发环境搭建好了. 第一步,安装JDK1.7 for mac MacOS10.9是自带python2.7.5的,够用,具体的可以打开终端输入python ...

  5. Centos6.4 安装NLTK

    NLTK 安装链接 http://www.nltk.org/install.html 不知道什么原因打不开pypi 的网站  http://pypi.python.org/pypi/setuptool ...

  6. python中nltk的下载安装方式

    首先去http://nltk.org/install.html下载相关的安装程序,然后 在cmd窗口中,进入到python的文件夹内的 Scripts内,运行easy_install pip 安装Py ...

  7. Python自然语言处理工具NLTK的安装FAQ

    1 下载Python 首先去python的主页下载一个python版本http://www.python.org/,一路next下去,安装完毕即可 2 下载nltk包 下载地址:http://www. ...

  8. NLTK的安装与简单测试

    1.NLTK简介 Natural Language Toolkit,自然语言处理工具包,在NLP领域中,最常使用的一个Python库.NLTK是一个开源的项目,包含:Python模块,数据集和教程,用 ...

  9. 在 NLTK 中使用 Stanford NLP 工具包

    转载自:http://www.zmonster.me/2016/06/08/use-stanford-nlp-package-in-nltk.html 目录 NLTK 与 Stanford NLP 安 ...

随机推荐

  1. linux设备驱动程序——将驱动程序编译进内核

    linux驱动程序--将驱动程序编译进内核 模块的加载 通常来说,在驱动模块的开发阶段,一般是将模块编译成.ko文件,再使用 sudo insmod module.ko 或者 depmod -a mo ...

  2. Httpd服务入门知识-Httpd服务常见配置案例之DSO( Dynamic Shared Object)加载动态模块配置

    Httpd服务入门知识-Httpd服务常见配置案例之DSO( Dynamic Shared Object)加载动态模块配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.加载动 ...

  3. php抽象工厂模式(Abstract factory pattern)

    练代码 <?php interface Button { public function render(); } interface GUIFactory { public function c ...

  4. KVM管理工具

    Ovirt:功能强大,RHEV的开源版本 WebVirtMgr:virt-manager的WEB模式的替代品 ConVirt:分为开源版.商业版 Openstack:开源框架,复杂程度较高

  5. 软件测试之Monkey 初步了解(入门级)

    monkey 介绍 Monkey是Google提供的一个用于稳定性与压力测试的命令行工具.可以运行在模拟器或者实际设备中.它向系统发送伪随机的用户事件(如按键.手势.触摸屏等输入),对软件进行稳定性与 ...

  6. spark读写Oracle、hive的艰辛之路(一)

    前两天工作需求,要通过给的几个Oracle的视图把数据入到hive库中,很遗憾,使用的华为云平台的集区环境中并没有sqoop1,当然也并没有sqoop2,所以,想到的解决方案是使用spark读取Ora ...

  7. pandas IO

    pd.read_csv("../data/user_info.csv", index_col="name") #假设csv里包含这几列: name, age, ...

  8. Oracle 实现自增主键

    废话不多讲,直接上代码 //1.创建表 Create Table testZcm(       Id Number(2) Not Null Primary Key,       postCode Nu ...

  9. 洛谷P2038 无线网络发射器选址

    题目描述 随着智能手机的日益普及,人们对无线网的需求日益增大.某城市决定对城市内的公共场所覆盖无线网. 假设该城市的布局为由严格平行的 \(129\) 条东西向街道和 \(129\) 条南北向街道所形 ...

  10. 第03组 Alpha冲刺(4/4)

    队名:不等式方程组 组长博客 作业博客 团队项目进度 组员一:张逸杰(组长) 过去两天完成的任务: 文字/口头描述: 制定了初步的项目计划,并开始学习一些推荐.搜索类算法 GitHub签入纪录: 暂无 ...