当前位置: 首页 > news >正文

nltk-英文句子分词+词干化

一、准备工作

①安装好nltk模块并在:

nltk/nltk_data: NLTK Data

链接中手动下载模型并放入到对应文件夹下。

具体放到哪个文件夹,先执行看报错后的提示即可。

②准备pos_map.json文件,放置到当前文件夹下。该文件用于词性统一

{"NN": "n","NNS": "n","NNP": "n","NNPS": "n","PRP": "n","PRP$": "n","VB": "v","VBD": "v","VBG": "v","VBN": "v","VBP": "v","VBZ": "v","MD": "v","JJ": "a","JJR": "s","JJS": "s","RB": "r","RBR": "r","RBS": "r","IN": "r","TO": "r","CD": "n","DT": "a","WDT": "a","CC": "r","UH": "r"
}

二、执行下述代码

from nltk import word_tokenize, pos_tag
from nltk.stem import WordNetLemmatizer
import jsondef tokenize_and_tag(sentence):# 分词tokens = word_tokenize(sentence)# 词性标注tagged = pos_tag(tokens)# 分离单词和标签words = [item[0] for item in tagged]pos_tags = [item[1] for item in tagged]return words, pos_tags# 示例用法
wnl = WordNetLemmatizer()
sentence = "The quick brown fox jumps over the lazy dog."
words, pos_tags = tokenize_and_tag(sentence)print("分词列表:", words)
print("词性列表:", pos_tags)with open("pos_map.json", "r", encoding="utf-8") as f:pos_map: dict = json.load(f)pos_tags = [pos_map.get(tag, "n") for tag in pos_tags]for i in range(len(words)):print(words[i]+'--'+pos_tags[i]+'-->'+wnl.lemmatize(words[i],pos_tags[i]))

示例结果:

分词列表: ['The', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog', '.']
词性列表: ['DT', 'JJ', 'NN', 'NN', 'VBZ', 'IN', 'DT', 'JJ', 'NN', '.']
The--a-->The
quick--a-->quick
brown--n-->brown
fox--n-->fox
jumps--v-->jump
over--r-->over
the--a-->the
lazy--a-->lazy
dog--n-->dog
.--n-->.

相关文章:

  • 如何顺利地将应用程序从 Android 转移到Android
  • 微服务架构中的 RabbitMQ:异步通信与服务解耦(一)
  • 第六部分:阶段项目 5:构建 NestJS RESTful API 服务器
  • 5G 网络全场景注册方式深度解析:从信令交互到报文分析
  • Day124 | 灵神 | 二叉树 | 二叉树最小深度
  • 什么是VR展馆?VR展馆的实用价值有哪些?
  • 110kV/630mm2电缆5km的交流耐压试验兼顾110kVGIS开关用
  • jquery.table2excel方法导出
  • Cause: org.apache.ibatis.ognl.OgnlException: sqlSegment
  • 新手到资深的Java开发编码规范
  • 游戏如何应对反编译工具dnspy
  • b/s开发 1.0
  • C++ JSON解析技术详解
  • YOLOv11 性能评估与横向对比
  • pdf图片导出(Visio和Origin)
  • X82Y文字aI连线验证码
  • 深度学习入门到实战:用PyTorch打通数学、张量与模型训练全链路​
  • TRC20代币创建教程指南
  • 腾讯2025年校招笔试真题手撕(二)
  • 高等数学-求导
  • 苏州好的做网站的公司哪家好/宁波seo优化流程
  • 东莞寮步网站设计/网络营销中的seo与sem
  • 网站管理系统/seo系统是什么
  • wordpress url参数/seo 是什么
  • 如何做网站拉动条/网站注册流程
  • 珠海华中建设工程有限公司网站/百度推广代理公司广州