zoukankan      html  css  js  c++  java
  • 几部电影的词云

    前段时间,我们爬取了几部热门的电影,分别是《三生三世》,《战狼》,《二十二》,我们今天 就以这几部为例,进行一个简单的词云的制作。

    我们主要以《二十二》为例,来制作一个评论的词云。

    首先需要安装几个必要的工具库:

    • Pandas 用来实现文件读取和存储,以及必要的数据转换。
    • jieba 一个强大的分词工具,用来实现分词,也是我们实现词云的一个最重要的工具。
    • wordcloud 词云工具,用来实现最终的词云的制作,也是必要的工具。

    下面我们就开始。

    首先需要导入相应的库,并读取我们下载的csv文件。

    import pandas as pd
    import numpy as np
    import matplotlib.pyplot as plt
    
    df_ershier = pd.read_csv('ershier.csv', encoding='utf-8')
    df_ershier.comment.fillna(' ')
    df_ershier.comment = df_ershier.comment.astype(str)
    

    下面就是实现词云的主要步骤。

    import jieba
    from wordcloud import WordCloud
    import PIL
    
    result = []  # 用来存放切分的词
    
    def parse(raw_text):
        for word in jieba.cut(raw_text):  # raw_text是字符串,也就是我们获取到的全部评论信息
            if len(word) > 1:
                result.append(word)
                
    
    def wordcloudplot(data, file_name):   # data 是以空格分隔的字符串        
        path = 'msyh.ttf'
        alice_mask = np.array(PIL.Image.open('yuan.jpg'))
        stopwords = ['nan', '就是', '还是', '但是', '没有','觉得', '三生三世', '三生', '三世',
                    '还有', '演员', '怎么', '这么', '电影', '这部']
    
        wordcloud = WordCloud(font_path=path, background_color="white",
                              margin=5,
                              width=1000, height=800,
                              mask=alice_mask, max_words=1000, max_font_size=100,
                              stopwords = stopwords, random_state=0)
                        
        wordcloud = wordcloud.generate(data)
        wordcloud.to_file(file_name)
        plt.imshow(wordcloud)
        plt.axis("off")
        plt.show()
    

    下面是执行部分

    raw_text = ' '.join(list(df_ershier.comment))
    parse(raw_text)
    text = ' '.join(result)
    wordcloudplot(text, 'ershier_.jpg')
    

    最后生成如下的词云

    同样的道理,生成如下的《战狼》,《三生三世》

  • 相关阅读:
    用 ArcMap 发布 ArcGIS Server FeatureServer Feature Access 服务 PostgreSQL 版本
    ArcMap 发布 ArcGIS Server OGC(WMSServer,MapServer)服务
    ArcScene 创建三维模型数据
    ArcMap 导入自定义样式Symbols
    ArcMap 导入 CGCS2000 线段数据
    ArcMap 导入 CGCS2000 点坐标数据
    ArcGis Server manager 忘记用户名和密码
    The view or its master was not found or no view engine supports the searched locations
    python小记(3)操作文件
    pytest(2) pytest与unittest的区别
  • 原文地址:https://www.cnblogs.com/cnkai/p/7806435.html
Copyright © 2011-2022 走看看