精华内容
下载资源
问答
  • python 京东商品评论情感分析 snownlp库的使用

    千次阅读 多人点赞 2020-09-11 12:43:59
    简要介绍了python的Snownlp库及其安装,以及Snownlp库的特性,之后介绍了Snownlp库的基本使用,包括分词、词性标注、打情感分数、汉字转拼音、繁体字转简体字、关键词提取、文本概括、TF、IDF和计算文本相似度,最后...

    不甘心的时候,就是在进步;痛苦的时候,就是在成长。

    一、Snownlp 简介

    SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里没有用NLTK,所有的算法都是自己实现的,并且自带了一些训练好的字典。注意本程序都是处理的unicode编码,所以使用时请自行decode成unicode编码。

    Snownlp github地址:https://github.com/isnowfy/snownlp

    # 安装
    pip install snownlp -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
    

    二、Snownlp 特性

    • 中文分词(Character-Based Generative Model)
    • 词性标注(TnT 3-gram 隐马)
    • 情感分析(官网没有介绍具体原理,但是指明购物类的评论的准确率较高,其实是因为它的语料库主要是购物方面的)
    • 文本分类(原理是朴素贝叶斯)
    • 转换成拼音 (Trie树实现的最大匹配)
    • 繁体转简体 (Trie树实现的最大匹配)
    • 提取文本关键词(TextRank算法)
    • 提取文本摘要(TextRank算法)
    • tf,idf
    • Tokenization(分割成句子)
    • 文本相似(BM25)

    三、Snownlp库的基本使用

    from snownlp import SnowNLP
    
    word = u'这个姑娘真好看'
    s = SnowNLP(word)
    print(s.words)        # 分词
    print(list(s.tags))   # 词性标注
    print(s.sentiments)   # 情感分数
    print(s.pinyin)       # 拼音
    print(SnowNLP(u'蒹葭蒼蒼,白露為霜。所謂伊人,在水一方。').han)  # 繁体字转简体
    
    运行结果如下:
    ['这个', '姑娘', '真', '好看']
    [('这个', 'r'), ('姑娘', 'n'), ('真', 'd'), ('好看', 'a')]
    0.9002381975487243
    ['zhe', 'ge', 'gu', 'niang', 'zhen', 'hao', 'kan']
    蒹葭苍苍,白露为霜。所谓伊人,在水一方。
    
    from snownlp import SnowNLP
    
    text = u'''
    自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。
    它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。
    自然语言处理是一门融语言学、计算机科学、数学于一体的科学。
    因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,
    所以它与语言学的研究有着密切的联系,但又有重要的区别。
    自然语言处理并不是一般地研究自然语言,
    而在于研制能有效地实现自然语言通信的计算机系统,
    特别是其中的软件系统。因而它是计算机科学的一部分。
    '''
    
    s = SnowNLP(text)
    
    print(s.keywords(limit=3))        # 关键词提取
    print('--------------------------------')
    summary = s.summary(limit=4)      # 文本概括
    for i in summary:
        print(i)
    
    print('--------------------------------')
    
    print(s.sentences)        # 句子
    
    运行结果如下:
    ['语言', '自然', '计算机']
    --------------------------------
    因而它是计算机科学的一部分
    自然语言处理是计算机科学领域与人工智能领域中的一个重要方向
    自然语言处理是一门融语言学、计算机科学、数学于一体的科学
    所以它与语言学的研究有着密切的联系
    --------------------------------
    ['自然语言处理是计算机科学领域与人工智能领域中的一个重要方向', '它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法', '自然语言处理是一门融语言学、计算机科学、数学于一体的科学', '因此', '这一领域的研究将涉及自然语言', '即人们日常使用的语言', '所以它与语言学的研究有着密切的联系', '但又有重要的区别', '自然语言处理并不是一般地研究自然语言', '而在于研制能有效地实现自然语言通信的计算机系统', '特别是其中的软件系统', '因而它是计算机科学的一部分']
    
    Process finished with exit code 0
    
    # 评价词语对文本的重要程度
    # TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。
    # TF词频越大越重要,但是文中会的“的”,“你”等无意义词频很大,却信息量几乎为0,这种情况导致单纯看词频评价词语重要性是不准确的。因此加入了idf
    # IDF的主要思想是:如果包含词条t的文档越少,也就是n越小,IDF越大,则说明词条t越重要
    # TF-IDF综合起来,才能准确的综合的评价一词对文本的重要性。
    
    from snownlp import SnowNLP
    
    
    s = SnowNLP([[u'这篇', u'文章', u'写得', u'不错'],
                 [u'那篇', u'论文', u'好'],
                 [u'这个', u'东西', u'好吃']])
    print(s.tf)     # tf 意思是词频(Term Frequency)
    print('---------------------------------------------------')
    print(s.idf)    # idf 意思是逆文本频率指数(Inverse Document Frequency)
    print('-----------------------------------------------------')
    # 文本相似度
    print(s.sim([u'文章']))
    print(s.sim([u'好']))
    
    运行结果如下:
    [{'这篇': 1, '文章': 1, '写得': 1, '不错': 1}, {'那篇': 1, '论文': 1, '好': 1}, {'这个': 1, '东西': 1, '好吃': 1}]
    ---------------------------------------------------
    {'这篇': 0.5108256237659907, '文章': 0.5108256237659907, '写得': 0.5108256237659907, '不错': 0.5108256237659907, '那篇': 0.5108256237659907, '论文': 0.5108256237659907, '好': 0.5108256237659907, '这个': 0.5108256237659907, '东西': 0.5108256237659907, '好吃': 0.5108256237659907}
    -----------------------------------------------------
    [0.4686473612532025, 0, 0]
    [0, 0.5348959411162205, 0]
    
    
    # 关于训练
    # 现在提供训练的包括分词,词性标注,情感分析,都是用的snownlp库自带的原始文件 以分词为例 分词在snownlp/seg目录下
    
    from snownlp import seg
    
    sentiment.train('neg.txt', 'pos.txt')
    seg.save('seg.marshal')
    
    # 这样训练好的文件就保存为seg.marshal了,之后修改snownlp/seg/__init__.py里的data_path指向刚训练好的文件即可
    

    四、NLP测试

    1. 获取数据

    URL:https://item.jd.com/100000499657.html#none

    在这里插入图片描述
    爬取部分好评、中评和差评数据,分别保存到三个txt里。

    import asyncio
    import aiohttp
    import re
    import logging
    import datetime
    
    logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s: %(message)s')
    start = datetime.datetime.now()
    
    class Spider(object):
        def __init__(self):
            # 设置最大信号量
            self.semaphore = asyncio.Semaphore(6)
            # 伪装请求头
            self.header = {
                "Host": "club.jd.com",
                "Cookie": "shshshfpa=c003ed54-a640-d73d-ba32-67b4db85fd3e-1594895561; shshshfpb=i5%20TzLvWAV56AeaK%20C9q5ew%3D%3D; __jdu=629096461; unpl=V2_ZzNtbUVRFkZ8DUddfRxcBGIEE1hKXhBGIQEVVnNLD1IwBkBeclRCFnQUR1JnGloUZwEZXkZcQxVFCEdkeR1ZAmYBEV1yZ0IXJQ4SXS9NVAZiChAJQAdGFnJfRFQrGlUAMFdACUtVcxZ1OEdkfBpUBG8EF1pCZ3MVfQ92ZDBMAGshQlBtQldEEXAKTlZyGGwEVwMTWUFXQxZ1DkFkMHddSGAAGlxKUEYSdThGVXoYXQVkBBVeclQ%3d; __jdv=122270672|baidu|-|organic|not set|1596847892017; areaId=0; ipLoc-djd=1-72-55653-0; PCSYCityID=CN_0_0_0; __jda=122270672.629096461.1595821561.1596847892.1597148792.3; __jdc=122270672; shshshfp=4866c0c0f31ebd5547336a334ca1ef1d; 3AB9D23F7A4B3C9B=DNFMQBTRNFJAYXVX2JODGAGXZBU3L2TIVL3I36BT56BKFQR3CNHE5ZTVA76S56HSJ2TX62VY7ZJ2TPKNIEQOE7RUGY; jwotest_product=99; shshshsID=ba4014acbd1aea969254534eef9cf0cc_5_1597149339335; __jdb=122270672.5.629096461|3.1597148792; JSESSIONID=99A8EA65B8D93A7F7E8DAEE494D345BE.s1",
                "Connection": "keep-alive",
                "Referer": "https://item.jd.com/4803334.html",
                "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"
    
            }
    
        async def scrape(self, url):
            async with self.semaphore:
                session = aiohttp.ClientSession(headers=self.header)
                response = await session.get(url)
                result = await response.text()
                await session.close()
                return result
    
        async def scrape_page(self, page):
            # 分别手动改变score参数 score=3 score=2 score=1  爬取好评 中评 差评数据
            url = f'https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100000499657&score=3&sortType=6&page={page}&pageSize=10&isShadowSku=0&fold=1'
            text = await self.scrape(url)
            await self.parse(text)
    
        async def parse(self, text):
            # 正则匹配提取数据
            content = re.findall('"guid":".*?","content":"(.*?)"', text)
            # 保存到txt
            with open('好评.txt', 'a+') as f:
                for con in content:
                    f.write(con + '\n')
                    logging.info(con)
    
        def main(self):
            # 爬取50页的数据
            scrape_index_tasks = [asyncio.ensure_future(self.scrape_page(page)) for page in range(0, 50)]
            loop = asyncio.get_event_loop()
            tasks = asyncio.gather(*scrape_index_tasks)
            loop.run_until_complete(tasks)
    
    
    if __name__ == '__main__':
        spider = Spider()
        spider.main()
        delta = (datetime.datetime.now() - start).total_seconds()
        print("用时:{:.3f}s".format(delta))
    

    2. 处理数据

    from pathlib import Path
    import pandas as pd
    
    # 获取当前目录下 有好评 中评 差评数据的txt
    p = Path(r'D:\python\pycharm2020\program\数据分析\中文情感分析')
    review_txt = list(p.glob('**/*.txt'))
    all_data = pd.DataFrame()
    for item in review_txt:
        emotion = item.stem     # 获取文件名 除后缀的部分
        with Path(item).open(mode='r') as f:
            con = f.read().split('\n')
        data = pd.DataFrame({'评论内容': con, '标签': [emotion] * len(con)})
        all_data = all_data.append(data)
    
    all_data.to_excel('评论数据.xlsx', index=False)
    
    

    3. NLP测试

    from snownlp import SnowNLP
    import pandas as pd
    import re
    
    # 读取数据
    df = pd.read_excel('评论数据.xlsx', encoding='utf-8')
    # print(df.info())
    # 去掉空值的行
    df = df.dropna(axis=0)
    content = df['评论内容']
    
    # 去除一些无用的字符   只提取出中文出来
    content = [' '.join(re.findall('[\u4e00-\u9fa5]+', item, re.S)) for item in content]
    scores = [SnowNLP(i).sentiments for i in content]
    emotions = []
    for i in scores:
        if i >= 0.75:
            emotions.append('好评')
        elif 0.45 <= i < 0.75:
            emotions.append('中评')
        else:
            emotions.append('差评')
    
    df['情感分数'] = scores
    df['情感'] = emotions
    df.to_excel('NLP测试后数据.xlsx')
    
    import pandas as pd
    
    df = pd.read_excel('NLP测试后数据.xlsx')
    # 看准确率   通过Snownlp情感打分 设置梯度得出的情感 好评 中评 差评 与实际标签相比较
    data = df[df['标签'] == df['情感']]
    print('准确率为:{:.2%}'.format(len(data) / len(df)))
    
    运行结果如下:
    准确率为:71.56%
    
    Process finished with exit code 0
    
    • 准确率还可以,但还不算高,分析原因可能为如下方面:
    • 因为只是做练习、熟悉Snownlp库的基本使用,通过情感打分和设置梯度来判断情感,没有自己构建该领域的语料库,如果构建了相关语料库,替换默认语料库,准确率会高很多。所以语料库是非常关键的,如果要正式进行文本挖掘,建议要构建自己的语料库。
    • 这个商品下的评论,中评、差评的界限比较模糊,每条评论的标签用的是爬取时默认标签:属于什么评论,没有人工去看,会有相当的误差,并且用于测试的数据量较小。
    • 对文本的处理也只是简单滤掉其他字符,提取中文。

    作者:叶庭云
    CSDN:https://blog.csdn.net/fyfugoyfa
    本文仅用于交流学习,未经作者允许,禁止转载,更勿做其他用途,违者必究。
    文章对你有所帮助的话,欢迎给个赞或者 star 呀,你的支持是对作者最大的鼓励,不足之处可以在评论区多多指正,交流学习呀。

    展开全文
  • NLP:基于snownlp库对文本实现提取文本关键词和文本摘要 目录 输出结果 1、测试文本 设计思路 核心代码 输出结果 1、测试文本 今天一大早,两位男子在故宫抽烟对镜头炫耀的视频在网络上...

    NLP:基于snownlp库对文本实现提取文本关键词和文本摘要

     

     

     

    目录

    输出结果

    1、测试文本

    设计思路

    核心代码


     

     

     

     

     

    输出结果

    1、测试文本

    今天一大早,两位男子在故宫抽烟对镜头炫耀的视频在网络上传播,引发网友愤怒。有人感到后怕,600年的故宫真要这两个人给点了,万死莫赎。也有评论称,把无知当成炫耀的资本,丢人!
    视频中两位男子坐在故宫公共休息区的遮阳伞下,面对镜头问出:“谁敢在故宫抽烟?”语气极其嚣张,表情带有挑衅意味。话音刚落,另外一位男子面向镜头吸了一口烟。而视频中两人也表示知道有故宫禁止吸烟的规定。
    事实上,2013年5月18日是国际博物馆日,故宫从这一天开始至今一直实行全面禁烟。根据规定,故宫博物院全体员工在院合作单位和个人不管在室内和室外,也不分开放区与工作区,一律禁止吸烟,对违反禁止吸烟规定的人员将进行严格处罚并通报全院。
    此外,在2015年6月1日起北京全市也开始了《控制吸烟条例》,规定公共场所工作场所室内环境室外排队等场合禁止吸烟,违者将最高被罚200元,全市统一设立举报电话12320。
    视频在网络上传播开来,不少网友担心故宫的安危,称一旦发生火情,后果不堪设想,有网友表示,这样的行为应该被旅游景区拉近黑名单,建议终身禁止进入任何景区和各种场馆。


     

     

    设计思路

    后期更新……

     

     

     

    核心代码

    class SnowNLP Found at: snownlp.__init__
    
    class SnowNLP(object):
        def __init__(self, doc):
            self.doc = doc
            self.bm25 = bm25.BM25(doc)
        
        @property
        def words(self):
            return seg.seg(self.doc)
        
        @property
        def sentences(self):
            return normal.get_sentences(self.
             doc)
        
        @property
        def han(self):
            return normal.zh2hans(self.doc)
        
        @property
        def pinyin(self):
            return normal.get_pinyin(self.doc)
        
        @property
        def sentiments(self):
            return sentiment.classify(self.doc)
        
        @property
        def tags(self):
            words = self.words
            tags = tag.tag(words)
            return zip(words, tags)
        
        @property
        def tf(self):
            return self.bm25.f
        
        @property
        def idf(self):
            return self.bm25.idf
        
        def sim(self, doc):
            return self.bm25.simall(doc)
        
        def summary(self, limit=5):
            doc = []
            sents = self.sentences
            for sent in sents:
                words = seg.seg(sent)
                words = normal.filter_stop(words)
                doc.append(words)
            
            rank = textrank.TextRank(doc)
            rank.solve()
            ret = []
            for index in rank.top_index(limit):
                ret.append(sents[index])
            
            return ret
        
        def keywords(self, limit=5, 
         merge=False):
            doc = []
            sents = self.sentences
            for sent in sents:
                words = seg.seg(sent)
                words = normal.filter_stop(words)
                doc.append(words)
            
            rank = textrank.KeywordTextRank
             (doc)
            rank.solve()
            ret = []
            for w in rank.top_index(limit):
                ret.append(w)
            
            if merge:
                wm = words_merge.SimpleMerge
                 (self.doc, ret)
                return wm.merge()
            return ret

     

     

     

     

     

    展开全文
  • Snownlp(自用)

    2021-04-16 20:41:48
    # 导入SnowNLP库 from snownlp import SnowNLP 情绪判断,返回值为正面情绪的概率,越接近1表示正面情绪,越接近0表示负面情绪 s = "这部电影真心棒,全程无尿点" s2 = "这部电影简直烂到爆" test = SnowNLP(s) ...

    安装

    pip install snownlp
    # 导入SnowNLP库
    from snownlp import SnowNLP
    

    情绪判断,返回值为正面情绪的概率,越接近1表示正面情绪,越接近0表示负面情绪

    s = "这部电影真心棒,全程无尿点"
    s2 = "这部电影简直烂到爆"
    test = SnowNLP(s)
    test2 = SnowNLP(s2)
    print(test.sentiments, test2.sentiments)
    
    0.9842572323704297 0.0566960891729531
    

    分词

    s = "我爱你"
    test = SnowNLP(s)
    print(test.words)
    
    ['我', '爱', '你']
    

    词性标注

    s = "我爱你"
    test = SnowNLP(s)
    for x in test.tags:
        print(x)
    
    ('我', 'r')
    ('爱', 'v')
    ('你', 'r')
    

    断句

    s = '李达康就是这样的人,她穷哭出声,不攀龙附凤,不结党营私,不同流合污,不贪污受贿,也不伪造政绩,手下贪污出事了他自责用人不当,服装厂出事了他没想过隐瞒,後面這些是繁體字'
    test = SnowNLP(s)
    print(test.sentences)
    
    ['李达康就是这样的人', '她穷哭出声', '不攀龙附凤', '不结党营私', '不同流合污', '不贪污受贿', '也不伪造政绩', '手下贪污出事了他自责用人不当', '服装厂出事了他没想过隐瞒', '後面這些是繁體字']
    

    繁体转简体

    s = '李达康就是这样的人,她穷哭出声,不攀龙附凤,不结党营私,不同流合污,不贪污受贿,也不伪造政绩,手下贪污出事了他自责用人不当,服装厂出事了他没想过隐瞒,後面這些是繁體字'
    test = SnowNLP(s)
    print(test.han)
    
    李达康就是这样的人,她穷哭出声,不攀龙附凤,不结党营私,不同流合污,不贪污受贿,也不伪造政绩,手下贪污出事了他自责用人不当,服装厂出事了他没想过隐瞒,后面这些是繁体字
    

    关键字抽取

    s = '''
    TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。
    TF词频越大越重要,但是文中会的“的”,“你”等无意义词频很大,却信息量几乎为0,这种情况导致单纯看词频评价词语重要性是不准确的。因此加入了idf
    IDF的主要思想是:如果包含词条t的文档越少,也就是n越小,IDF越大,则说明词条t越重要
    TF-IDF综合起来,才能准确的综合的评价一词对文本的重要性。
    '''
    test = SnowNLP(s)
    print(test.keywords())
    
    ['词', '频', '评价', '语', '越']
    
    展开全文
  • 首先安装jieba和snownlp直接pip就可以。...#SnowNLP库: # words:分词 # tags:关键词 # sentiments:情感度 # pinyin:拼音 # keywords(limit):关键词 # summary:关键句子 # sentences:语序 # tf:tf值 # idf:i...

    首先安装jieba和snownlp直接pip就可以。

    import jieba
    from snownlp import SnowNLP
    #SnowNLP库:
    # words:分词
    # tags:关键词
    # sentiments:情感度
    # pinyin:拼音
    # keywords(limit):关键词
    # summary:关键句子
    # sentences:语序
    # tf:tf值
    # idf:idf值
    
    #分词的对比
    s=SnowNLP('这个东西很赞')
    #s.words返回一个列表,打印出来即可
    print(s.words)
    ['这个', '东西', '很', '赞']
    
    #jieba.cut返回一个生成器
    print(list(jieba.cut('这个东西很赞')))
    ['这个', '东西', '很赞']
    
    #拼音真的牛
    print(s.pinyin)
    
    ['zhe', 'ge', 'dong', 'xi', 'hen', 'zan']
    
    #关键词tags
    print(list(s.tags))
    [('这个', 'r'), ('东西', 'n'), ('很', 'd'), ('赞', 'Vg')]
    
    
    
    #关键词的对比
    
    text = '''
    自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。
    它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。
    自然语言处理是一门融语言学、计算机科学、数学于一体的科学。
    因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,
    所以它与语言学的研究有着密切的联系,但又有重要的区别。
    自然语言处理并不是一般地研究自然语言,
    而在于研制能有效地实现自然语言通信的计算机系统,
    特别是其中的软件系统。因而它是计算机科学的一部分。
    '''
    s=SnowNLP(text)
    #s.tags 返回一个列表
    print(list(s.keywords(5)))
    ['语言', '自然', '计算机', '领域', '研究']
    
    #jieba.analyse返回一个列表
    print(jieba.analyse.extract_tags(text,topK=5))
    ['自然语言', '计算机科学', '语言学', '研究', '领域']

    我个人还是认为jieba分词要比snownlp分词好点,但是snownlp可以挑选关键句子和做情感分析。

    #情感分析
    print(s.sentiments)
    
    1.0
    
    #关键句子
    print(s.summary())
    ['因而它是计算机科学的一部分', '自然语言处理是计算机科学领域与人工智能领域中的一个重要方向', '自然语言处理是一门融语言学、计算机科学、数学于一体的科学', '所以它与语言学的研究有着密切的联系', '这一领域的研究将涉及自然语言']
    
    

     

    展开全文
  • 由于当前自然语言处理基本都是针对英文的,而中文没有 空格分割特征词,Python做中文文本挖掘较难,后续开发了一些针对中文处理的,例如SnowNLP、Jieba、BosonNLP等。注意 SnowNLP处理的是unicode编码,所以使用...
  • SnowNLP

    2019-08-04 12:39:54
    SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里...
  • 使用的库是snownlp库
  • SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里...
  • SnowNLP是国人开发的python类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和...# SnowNLP库: # words
  • SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里...
  • SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了的启发而写的,由于现在大部分的自然语言处理基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里没有用NLTK...
  • 这是《Python数据挖掘课程》系列文章,前面很多文章都讲解了分类、聚类算法,而这篇文章主要讲解如何调用SnowNLP库实现情感分析,处理的对象是豆瓣《肖申克救赎》的评论文本。文章比较基础,希望对你有所帮助,提供...
  • snownlp入门

    千次阅读 2017-12-18 11:59:30
    昨晚上发现了snownlp这个,很开心。先说说我开心的原因。我本科毕业设计做的是文本挖掘,用R语言做的,发现R语言对文本处理特别不友好,没有很多强大的,特别是针对中文文本的,加上那时候还没有学机器学习算法...
  • SnowNLP安装

    千次阅读 2020-06-17 17:15:05
    最近在完成大数据作业,对数据进行情感分析时用到了SnowNLP这个第三方的,可是在安装过程中遇到了一些小问题,下面是安装过程以及错误解决方法: 这里如果直接在命令行里输入pip install snownlp,会遇到time out...
  • SnowNLP:中文文本处理Python

    千次阅读 2018-02-01 16:02:45
    SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里...
  • 这是《Python数据挖掘课程》系列文章,前面很多文章都讲解了分类、聚类算法,而这篇文章主要讲解如何调用SnowNLP库实现情感分析,处理的对象是豆瓣《肖申克救赎》的评论文本。文章比较基础,希望对你有所帮助,提供...
  • 基于中文文本挖掘库snownlp的购物评论文本情感分析 本文实例讲述了Python实现购物评论文本情感分析操作。分享给大家供大家参考,具体如下: 首先简单介绍一下这个可以进行哪些文本挖掘。snownlp主要可以进行中文...
  • SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里...
  • 主要介绍了Python实现购物评论文本情感分析操作,结合实例形式分析了Python使用中文文本挖掘库snownlp操作中文文本进行感情分析的相关实现技巧与注意事项,需要的朋友可以参考下
  • 昨晚上发现了snownlp这个,欣喜若狂。先说说我这么开心的原因。我本科毕业设计做的是文本挖掘,用R语言做的,发现R语言对文本处理特别不友好,没有很多强大的,特别是针对中文文本的,加上那时候还没有学机器...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 148
精华内容 59
关键字:

snownlp库