python(数据分析与可视化)六

爬虫与数据库连接

1.估算评论情感分数

把评论数据从数据库拿出,走停止词过滤,统计出现的积极词汇和消极词汇的个数。
假定 用户满意分数:(积极词汇个数1 - 消极词汇个数5)/评论条数

comment_words = [
'品质', '、', '做工', '都', '非常', '好', ',', '发货', '贼', '快', ',', '快递', '也', '给', '力', ',', '棒棒', '哒', '~', '?', '?', '?', '不得不', '赞', ',', '质量', '真的', '好', ',', '包装', '物流', '也', '不错', '。', '真心', '喜欢', ',', '入手', '后', '不会', '让', '你', '后悔', '的', '!', '东西', '已经', '收到', '!', '手感', '不错', '!', '用料', '扎实', '!', '质量', '很', '好', '!', '平常', '用', '基本', '没有', '问题', '!', '宝贝', '心仪', '很久', '了', ',', '趁', '活动', '时候', '买', '真的', '太', '划算', '了', ',', '喜欢', '的', '不要', '犹豫', '啊', '跟', '我', '在', '实体店', '买', '的', '一模一样', '!', '还是', '一样', '的', '好', '用', ',', '开心', '总体', '来说', ',', '确实', '很', '不错', ',', '客服', '的', '服务态度', '也', '很棒', ',', '说话', '几乎', '马上', '就', '会', '回', '消息', ',', '物超所值', ',', '真心', '推荐', '宝贝', '特别', '喜欢', ',', '颜值', '高质量', '好', ',', '中看', '又', '中用', ',', '有', '需要', '的', '朋友', '不要', '犹豫', '了', '外形', '外观', ':', '改变', '最大', '的', '一款', ',', '平民', '版', '终于', '给', 'led', '屏幕', '了', '。', '\n', '屏幕', '音效', ':', '还好', ',', '一罐', '的', '苹果', '特色', '。', '\n', '拍照', '效果', ':', '对比', '之前', '用', '的', '8', ',', '提升', '较大', '。', '特别', '夜景', '上', ',', '很', '不错', '。', '\n', '运行', '速度', ':', '流畅', '无卡顿', ',', '给', '老婆', '买', '的', ',', '目前', '没', '听到', '发牢骚', '。', '\n', '待机时间', ':', '待机', '挺', '好', '的', ',', '14', '这个', '烂', '兮兮', '的', '系统', ',', '续航', '都', '好', '过', '11', '。', '\n', '其他', '特色', ':', '没送', '充电器', ',', '但是', '送', '了', '一条', 'pd', '线', ',', '自己', '这', '也', '备', '着', 'pd', '头', ',', '总体', '不错', '。', '之前', '用', '的', '是', 'x', '用', '了', '三年', '正好', '最近', '屏幕', '漏液', '给', '我', '提供', '了', '充分', '的', '理由', '换', '这款', '新', '的', '12', ',', '身边', '好多', '盆友', '都', '先换', '了', ',', '问', '了', '他们', '使用', '体验', '后', '也', '果断', '下手', ',', '用', '起来', '很', '舒服', ',', '很', '喜欢', '这种', '4', '-', '5s', '的', '手感', '质感', ',', '希望', '继续', '保持', '这样', '~', '用', '着', '还', '不错', ',', '苹果', '手机', '系统', '好用', ',', '运行', '速度', '很快', ',', '音质', '很', '好', ',', '拍照', '清晰', ',', '待机时间', '长', ',', '用', '了', '一段时间', '觉得', '还', '可以', ',', '相信', '京东', ',', '品质', '有', '保证', ',', '很', '满意', '。']
#print('comment_words',comment_words[:20])with open('./dict1/emotion_dict/neg_all_dict.txt',mode='r',encoding='utf-8') as f:negative_words = f.read().splitlines()print('negative_words',negative_words[:20])negative_words_num = 0
for comment_word in comment_words:if comment_word in negative_words:negative_words_num += 1with open('./dict1/emotion_dict/pos_all_dict.txt',mode='r',encoding='utf-8') as f:postive_words = f.read().splitlines()print('postive_words',postive_words[:20])postive_words_num = 0
for comment_word in comment_words:if comment_word in postive_words:postive_words_num += 1#统计程度词汇个数
degree_num = 1
from L06数据可视化.dict1.degree_dict.degree_dict import DEGREE_ALL
degree_words_num = 0
for comment_word in comment_words:if comment_word in DEGREE_ALL:degree_words_num += 1
# 算出 商品(评论情感化分析)满意度评估分
score = (postive_words_num*1 - negative_words_num*3)/5
score = score*(degree_num)
print(score)
if 0 < score <600:print('用户对商品满意度低')
elif 600 < score < 1000:print('用户对商品满意度中')
elif score > 1000:print('用户对商品满意度高')

2.词云图

词云图:词汇构成的图片,词汇出现频率高的大一些
绘图:最底层(计算机图形学,绘制直线算法) -> (偏底层图形驱动)opengl/derectX -> (应用层绘图库)c语言PIL
-> (PIL库移植)pillow ->(词云图更垂直、高级封装)word_cloud库
常用pillow,本节使用word_cloud库

  • https://github.com/amueller/word_cloud
  • pip install wordcloud

安装可能报错,由于wordcloud库依赖pillow绘图库

from wordcloud import WordCloudcomment_words = ['品质', '、', '做工', '都', '非常', '好', ',', '发货', '贼', '快', ',', '快递', '也', '给', '力', ',', '棒棒', '哒', '~', '?', '?', '?', '不得不', '赞', ',', '质量', '真的', '好', ',', '包装', '物流', '也', '不错', '。', '真心', '喜欢', ',', '入手', '后', '不会', '让', '你', '后悔', '的', '!', '东西', '已经', '收到', '!', '手感', '不错', '!', '用料', '扎实', '!', '质量', '很', '好', '!', '平常', '用', '基本', '没有', '问题', '!', '宝贝', '心仪', '很久', '了', ',', '趁', '活动', '时候', '买', '真的', '太', '划算', '了', ',', '喜欢', '的', '不要', '犹豫', '啊', '跟', '我', '在', '实体店', '买', '的', '一模一样', '!', '还是', '一样', '的', '好', '用', ',', '开心', '总体', '来说', ',', '确实', '很', '不错', ',', '客服', '的', '服务态度', '也', '很棒', ',', '说话', '几乎', '马上', '就', '会', '回', '消息', ',', '物超所值', ',', '真心', '推荐', '宝贝', '特别', '喜欢', ',', '颜值', '高质量', '好', ',', '中看', '又', '中用', ',', '有', '需要', '的', '朋友', '不要', '犹豫', '了', '外形', '外观', ':', '改变', '最大', '的', '一款', ',', '平民', '版', '终于', '给', 'led', '屏幕', '了', '。', '\n', '屏幕', '音效', ':', '还好', ',', '一罐', '的', '苹果', '特色', '。', '\n', '拍照', '效果', ':', '对比', '之前', '用', '的', '8', ',', '提升', '较大', '。', '特别', '夜景', '上', ',', '很', '不错', '。', '\n', '运行', '速度', ':', '流畅', '无卡顿', ',', '给', '老婆', '买', '的', ',', '目前', '没', '听到', '发牢骚', '。', '\n', '待机时间', ':', '待机', '挺', '好', '的', ',', '14', '这个', '烂', '兮兮', '的', '系统', ',', '续航', '都', '好', '过', '11', '。', '\n', '其他', '特色', ':', '没送', '充电器', ',', '但是', '送', '了', '一条', 'pd', '线', ',', '自己', '这', '也', '备', '着', 'pd', '头', ',', '总体', '不错', '。', '之前', '用', '的', '是', 'x', '用', '了', '三年', '正好', '最近', '屏幕', '漏液', '给', '我', '提供', '了', '充分', '的', '理由', '换', '这款', '新', '的', '12', ',', '身边', '好多', '盆友', '都', '先换', '了', ',', '问', '了', '他们', '使用', '体验', '后', '也', '果断', '下手', ',', '用', '起来', '很', '舒服', ',', '很', '喜欢', '这种', '4', '-', '5s', '的', '手感', '质感', ',', '希望', '继续', '保持', '这样', '~', '用', '着', '还', '不错', ',', '苹果', '手机', '系统', '好用', ',', '运行', '速度', '很快', ',', '音质', '很', '好', ',', '拍照', '清晰', ',', '待机时间', '长', ',', '用', '了', '一段时间', '觉得', '还', '可以', ',', '相信', '京东', ',', '品质', '有', '保证', ',', '很', '满意', '。'
]
comment_words_str = ' '.join(comment_words) #"""品质 做工 都"""
print(comment_words_str)wc = WordCloud(font_path='./simhei.ttf', #中文字体文件background_color='white',width=1000,height=800,min_font_size=50,).generate(comment_words_str)
wc.to_file('./2评论词云图.png')

下面是我的一个词云图截图:

3.绘制图表

图表
常见图表类型:条形图、饼状图、折线图、热力图,数据直观的展现出来
#常用包:
#1.pillow库(偏底层) 2.matplatlib(偏自动化) 3.(全自动化)chart.js
https://github.com/Kozea/pygal
pygal库虽然收藏数不是特别多,但也不少,且代码和文档简单

import pygalbar_chart = pygal.Bar()
bar_chart.title = '测试pygal绘制图表'
bar_chart.x_labels = ['2015','2016','2019','2018','2019','2020']
bar_chart.add('人口(单位亿)',[10,10.5,11,11.5,12,12.5,13])
bar_chart.render_to_file('./3testpygal.svg')

4.绘制图表的实例

下面是一个简单绘制图表实例:

import sqlite3
import pygalconnect = sqlite3.connect('../L05数据持久化和清洗/jd.db')
cursor = connect.cursor()
cursor.execute("""select count(id) from comm""")
comment_amount = cursor.fetchall()
user_amount = comment_amount[0][0]
print('用户总数',user_amount)
cursor.execute("""select count(id),product_color from comm group by product_color""")
rs = cursor.fetchall() #[(377, '白色'), (116, '红色'), (265, '绿色'), (288, '蓝色'), (304, '黑色')]print(rs)colors = {}
for r in rs:num = r[0]color = r[1]colors[color] = round(num/user_amount *100,2)
print('colors',colors)pie_chart = pygal.Pie()
pie_chart.title = 'iphone12用户喜欢的颜色'
pie_chart.add('白色',colors['白色'])
pie_chart.add('红色',colors['红色'])
pie_chart.add('绿色',colors['绿色'])
pie_chart.add('蓝色',colors['蓝色'])
pie_chart.add('黑色',colors['黑色'])
pie_chart.render_to_file('./4手机颜色比例图.svg')

今天的分享就到这里,如果还想了解更多,可以看我主页!

python(数据分析与可视化)六相关推荐

  1. 数据载入、存储及文件格式——《利用python数据分析》第六章学习

    数据载入.存储及文件格式--<利用python数据分析>第六章学习 前言 这次带来第六章的学习笔记,希望这次效率高点,快点写完. 代码环境这次小升级,Pycharm 2021.3 + An ...

  2. [转载] Python数据分析与可视化学习笔记(一)数据分析与可视化概述

    参考链接: Python | 数据分析的数学运算 数据分析与可视化(一) 1.1 数据分析1.1.1 数据.信息与数据分析1.1.2数据分析与数据挖掘的区别1.1.3数据分析的流程 1.2 数据可视化 ...

  3. 【Python数据分析与可视化】Pandas统计分析-实训

    [Python数据分析与可视化]Pandas统计分析-实训 文章目录 [Python数据分析与可视化]Pandas统计分析-实训 导包 读取数据 分析数据 1.查看数据的描述和统计信息: 2.修改列名 ...

  4. python数据分析与可视化【一】python基础实例

    用python做数据分析与可视化(一) python编程基础 这一块前面我写过博客,奉上链接:python基础 这篇就来看看几个小实例 后面有python很基础的知识点和例子 后面数据分析能用上 下一 ...

  5. 【Python数据分析与可视化】期末复习笔记整理(不挂科)

    [Python数据分析与可视化]期末复习笔记 1. 数据分析与可视化概述 对比 概念 常用工具 Python常用类库 Jupyter notebook中的常用快捷方式 2. Python编程基础 co ...

  6. python数据分析可视化实例-Python数据分析与可视化从入门到精通

    (1)没有高深理论,每章都以实例为主,读者参考书中源码运行,就能得到与书中一样的结果.(2)专注于Python数据分析与可视化操作中实际用到的技术.相比大而全的书籍资料,本书能让读者尽快上手,开始项目 ...

  7. python可视化数据分析-Python数据分析与可视化从入门到精通

    (1)没有高深理论,每章都以实例为主,读者参考书中源码运行,就能得到与书中一样的结果.(2)专注于Python数据分析与可视化操作中实际用到的技术.相比大而全的书籍资料,本书能让读者尽快上手,开始项目 ...

  8. Python数据分析-数据可视化(二)

    欢迎大家访问个人博客:https://jmxgodlz.xyz 文章目录 前言 Matplotlib 折线图格式调整 标签 线条颜色 线条形状 折点样式 线条透明度 前言 看到有些论文插图十分简洁美观 ...

  9. Python数据分析与可视化学习笔记(一)数据分析与可视化概述

    数据分析与可视化(一) 1.1 数据分析 1.1.1 数据.信息与数据分析 1.1.2数据分析与数据挖掘的区别 1.1.3数据分析的流程 1.2 数据可视化 1.3 数据分析与可视化常用工具 1.4 ...

  10. python数据分析与可视化清华大学_Python数据分析与可视化 微课视频版

    随着互联网的飞速发展,人们在互联网上的行为产生了海量数据,对这些数据存储.处理与分析带动了大数据技术的发展.其中,数据挖掘和分析技术可以帮助人们对庞大的数据进行相关分析,找到有价值的信息和规律,使得人 ...

最新文章

  1. 【VMC实验室】在QCloud上创建您的SQL Cluster(1)
  2. 学着学着Linux系统写篇心得
  3. CodeForces 660B Seating On Bus
  4. 在SAP C4C TI(Thing Inspector)页面里添加自定义UI
  5. 一张图理清ASP.NET Core启动流程
  6. 【RK3399Pro学习笔记】七、ROS订阅者Subscriber的编程实现
  7. linux md5sum命令
  8. 2008版计算机基础,计算机应用基础2008版各章课后习题解析
  9. Ant 基本语法的使用示列
  10. [Javascript]把html内容复制到剪贴板
  11. oracle不提交事务语句,oracle查找客户端未提交的事务语句
  12. AXI仿真之AXI Chip2Chip
  13. 基于springboot汽车租赁系统
  14. SVN修改文件夹名称
  15. C程序设计(第五版)谭浩强第七章课后答案
  16. 企业级网络性能优化 课内8 vlanif2in1
  17. Nim游戏入门+SG函数
  18. oracle 退出代码 255,sql – 奇怪的SSIS错误(进程退出代码255)
  19. ArcGIS中建筑物图形简化工具和建筑物群聚合工具的应用
  20. C#遇到 错误:不可访问,因为它具有一定的保护级别

热门文章

  1. Fadeln()方法
  2. python灰帽编程_灰帽Python的Python
  3. javascript中使用枚举定义一个对象进行数据转换
  4. 立创eda学习笔记十一:立创eda、立创商城、嘉立创的区别
  5. java——接口作为方法的参数和返回值
  6. 英特尔 SST 技术
  7. 1.27 Watermelon
  8. 从道通诉大疆一案看美国337调查中的国内实业原则
  9. Vscode软件,如何启动vue项目
  10. STM32工程模板文件夹