python数据分析:词性标注

词性标注

就是给每一个词确定一个词性分类。很多场景需要做词性标注,然后基于标注的词性可以做进一步应用。例如统计竞争对手新闻稿的主要词语分布、分词结果筛选和过滤、配合文章标签的提取等。
结巴分词的词性标注方法采用和ictclas兼容的标记法。常用的分类如下:
python数据分析:词性标注_第1张图片

简单实现:

使用jieba.posseg做带有词性标注的分词,并通过循环得到每个分词的词语和类别结果;

import newspaper
import pandas as pd
import jieba.posseg as pseg

# 加载停用词
stopWords = [line.strip() for line in open('stopWord2.txt', encoding='gbk').readlines()]

# 获取文章 银保监会出台新政为例
article = newspaper.Article('https://finance.sina.com.cn/money/bank/bank_hydt/2019-02-25/doc-ihsxncvf7656807.shtml', language='zh')
# 下载文章
article.download()
# 解析文章
article.parse()
# 对文章进行nlp处理
article.nlp()
# nlp处理后的文章拼接
article_words = "".join(article.keywords)

seg_list_exact = pseg.cut(article_words)  # 精确模式分词[默认模式]

words_list = []  # 空列表用于存储分词和词性分类

for word in seg_list_exact:  # 循环得到每个分词
    if word not in stopWords:  # 如果不在去除词库中
        words_list.append((word.word, word.flag))  # 将分词和词性分类追加到列表

words_pd = pd.DataFrame(words_list, columns=['word', 'type'])  # 创建结果数据框
print (words_pd.head())  # 展示

你可能感兴趣的:(数据分析应用)