词性标注,用jieba.possege做带有词性分类的分词,并用pandas做数据结构化展示
导入库
import jieba.posseg as pseg
import pandas as pd
读取文件
fn = open('d:/collect.txt',encoding='UTF-8')
string_data = fn.read()
fn.close()
分词+词性标注
words = pseg.cut(string_data) #分词
words_list = [] #建立一个用于存放分词和词性分类的空列表
for word in words: #循环得到每个分词
words_list.append((word.word,word.flag)) #将分词和词性分类追加到列表
words_pd = pd.DataFrame(words_list,columns=['word','type']) #创建结果数据框
print(words_pd.head(4))
词性分类汇总——两列汇总
words_gb = words_pd.groupby(['type','word'])['word'].count() #使用pandas的groupby方法对“type”和“word”做分类汇总
print(words_gb.head(10))
词性分类汇总——单列分类汇总
words_gb2 = words_pd.groupby('type').count() #汇总列为type,汇总方式为计数
words_gb2 = words_gb2.sort_values(by='word',ascending=False) #对结果使用sort_values方法对word列逆向排序
print(words_gb2.head(10))
选择特定类型词语做展示
words_pd_index = words_pd['type'].isin(['n','eng']) #使用isin方法在列表中选择n名词和eng英文
words_pd_select = words_pd[words_pd_index]
print(words_pd_select.head(4))# 词性分类汇总——单列分类汇总
网友评论