赞
踩
步骤一:导入 jieba 库,对文本内容进行分词处理。
- import nltk import re
- import jieba data_path='D://自然语言处理/西游记第一章.txt'
- text=''
- with open(data_path,'r') as f:
- text=f.read()
- print(len(set(text)))
- text
- rst1=re.findall(r'<p>\n\t\u3000\u3000(.*)</p>\n',text)
- print(rst1)
- rst1=','.join(rst1)
- text2=jieba.lcut(rst1)
- print('分词结果',text2)
- #标注
- import jieba.posseg as pseg
- psgRes=pseg.lcut(rst1)
- print('标注结果:',psgRes)
- #统计词性标注结果中每种词性出现的次数,并输出出现次数最多的前十项
- import pandas as pd
- flags=[]
- for i in psgRes:
- flags.append(i.flag)
- result=pd.value_counts(flags)
- print('词性统计结果\n',result)
- print('词性出现最多的前十行\n',result.head(10))
- #统计词性标注结果中每个词有多少种词性,并输出被标注词性种类最多的前十项
- #去重
- psgRes1=[]
- for l1 in psgRes:
- if l1 not in psgRes1:
- psgRes1.append(l1)
- print(psgRes1)
- words=[]
- for i in psgRes1:
- words.append(i.word)
- result1=pd.value_counts(words)
- print('词性种类统计结果\n',result1)
- print('被标注词性种类最多的前十项\n',result1.head(10))
去重方法可用set函数,但会影响原序列顺序。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。