python数据挖掘电影评分分析_【python数据挖掘】使用词云分析来分析豆瓣影评数据...

概述:

制作词云的步骤:

1、从文件中读取数据

2、根据数据追加在一个字符串里面,然后用jieba分词器将评论分开

3、设置WordCloud词云参数

4、保存最后的结果

第一步:引入依赖库

# 1、表格库

import csv

# 2、jieba分词器

import jieba

# 3、算法运算库

import numpy

# 4、图像库

from PIL import Image

# 5、词云库

from wordcloud import WordCloud

第二步:读取数据

stars = ("很差","较差","还行","推荐","力荐")

comments = []

with open("files/douban.csv","r",encoding="utf-8") as file:

reader = csv.reader(file)

for i in reader:

if i[1] not in stars:

pass

else:

comments.append(i)

file.close()

第三步:解析数据并保存

str = ""

for i in data:

str+=i[2]

cutWord = " ".join(jieba.cut(str))

bgImg = numpy.array(Image.open("files/a.jpg"))

cloud = WordCloud(

font_path="C:\Windows\Fonts\STZHONGS.TTF",

background_color="white",

mask=bgImg

).generate(cutWord)

cloud.to_file("ciyun.png")

效果图:

模型:

效果:

源代码:

# 1、表格库

import csv

# 2、jieba分词器,将一句话的词语分离出来

# 1)、控制台输入:pip install jieba

# 2)、左上角 file-->settings--->项目

# 3)、清华园下载方式(在控制台)

# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple jieba

# 阿里

# pip install jieba -i http://mirrors.aliyun.com/pypi/simple/

import jieba

# 3、算法运算库

# 控制台输入:pip install numpy

# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy

import numpy

# 4、图像库

# 控制台输入:pip install pillow

# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pillow

from PIL import Image

# 5、词云库

# 控制台输入:pip install WordCloud

# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple WordCloud

from wordcloud import WordCloud

# 定义函数,将数据从表格里读取出来

def getDataFromCsv():

# 设置星级等级

stars = ("很差","较差","还行","推荐","力荐")

# 设置空列表,装从表格里面读出来的所有数据

comments = []

# 打开表格,"r"读取模式 读取数据

with open("files/douban.csv","r",encoding="utf-8") as file:

# 表格操作读数据

reader = csv.reader(file)

# 遍历表格里得到所有数据 [用户名,星级,评论]

for i in reader:

# 如果没有星级

if i[1] not in stars:

# 数据无效,忽略不处理

pass

else:

# 数据有效,装入数组

comments.append(i)

# print(comments)

file.close()

# 将装有数据的列表返回出来

return comments

# 定义函数,将解析的评论做成词云

def getWordCloud():

# 调用函数:得到表格中所有的数据

data = getDataFromCsv()

# 定义空的字符串,把所有的评论装进来

str = ""

# 遍历所有的数据

for i in data:

# [用户名, 星级, 评论]

str+=i[2]

# print(str)

# 通过jieba分词器将评论里面的词语用空格分离出来

cutWord = " ".join(jieba.cut(str))

# print(cutWord)

# 读取图片模型

bgImg = numpy.array(Image.open("files/a.jpg"))

# 准备词云参数

cloud = WordCloud(

# 文字的路径:本地的系统文件路径

font_path="C:\Windows\Fonts\STZHONGS.TTF",

# 生成词云的图片背景

background_color="white",

# 参考图片(参数,没有引号)

mask=bgImg

).generate(cutWord)

# 将做成的结果生成图片

cloud.to_file("ciyun.png")

作者

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值