惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
人人都是产品经理
人人都是产品经理
IT之家
IT之家
T
The Blog of Author Tim Ferriss
V
V2EX
博客园 - 聂微东
The Cloudflare Blog
Blog — PlanetScale
Blog — PlanetScale
A
About on SuperTechFans
U
Unit 42
Vercel News
Vercel News
L
LangChain Blog
博客园 - 司徒正美
H
Help Net Security
Recent Announcements
Recent Announcements
Recorded Future
Recorded Future
V
Visual Studio Blog
Jina AI
Jina AI
Microsoft Azure Blog
Microsoft Azure Blog
GbyAI
GbyAI
Y
Y Combinator Blog
C
Check Point Blog
博客园 - 三生石上(FineUI控件)
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
J
Java Code Geeks
The Register - Security
The Register - Security
The GitHub Blog
The GitHub Blog
B
Blog RSS Feed
F
Fortinet All Blogs
B
Blog
G
Google Developers Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
云风的 BLOG
云风的 BLOG
爱范儿
爱范儿
MongoDB | Blog
MongoDB | Blog
F
Full Disclosure
有赞技术团队
有赞技术团队
罗磊的独立博客
博客园_首页
MyScale Blog
MyScale Blog
aimingoo的专栏
aimingoo的专栏
Google DeepMind News
Google DeepMind News
M
MIT News - Artificial intelligence
N
Netflix TechBlog - Medium
Engineering at Meta
Engineering at Meta
量子位
I
InfoQ
小众软件
小众软件
P
Proofpoint News Feed

WSH

凑数日子 2026年,大概将会是最后一个人口保持在14亿以上的年份 感谢之人 数字经济中的注意力交易 突然的噩耗 一株洋瓜藤 再见到姑妈 港澳掠影 Miniflux 中文搜索能力增强 慢慢吹~~~轻轻送~~~ 房子梦 探索云南-大理 证书过期导致的错误 过年被追问工资 在秋天开始 水里的鱼 斩断联系1 云南壮族婚恋 我有一颗乳牙 世界的底色是争,抢,偷 无题4 无题3 人来人往 AI见闻 无题2 滇池掠影 WebGIS 三维空间分析之参考超图实现的天际线分析 我原来是个同步单线程 往事如烟1 净月潭之行 一万次悲伤 开源丑闻的碎碎念 提高开发幸福感所做的举措之构建前端基础设施 浏览器标签页进程引发的性能问题 山的那边 想回到过去去去去去去去去去去去去~ WebGIS开发之glsl支持 WebGIS三维空间分析之坡度计算 WebGIS 三维分析之阴影率分析 幸福(或我的女儿叫波兰) 最后一课 Markdown解析高亮及Mermaid 上海掠影 Cesium/QGIS加载图新地球LRC自定义图层 端午粽子 如何清晰地写作 清明扫墓 自编写,自用的开源工具 饮食 AI在GIS领域的实践之QGIS-MCP 燕南飞 WebGIS 三维空间分析之剖面线分析 WebGIS三维开发中的面积量测 WebGIS空间分析之坡向分析的实现 收藏自由-新的书签工具 月夜杂谈 花海,指弹版 三维之Cesium分屏显示 请验证您是真人 GIS数据转换——从点到栅格 自定义「ONE · 一个」订阅源 西湖美人峰徒步 给开源RSS服务应用Miniflux添加「标题翻译」 五一青山湖骑行 将chatGPT集成到微信机器人 动手更换旧手机——google pixel3的电池 Vue组件检测无效属性 ArcGIS复杂插件处理 两件关于博客网站变更的事情 Vue开发个人守则 账户注销后遗症 《纳瓦尔宝典 财富与幸福》前两章的一些摘录 听一首黄歌—Yellow 坏事总是成双 出差消小记 cesium-控高分析 当你孤单你会想起谁 穿越城市-青山湖 Harry Browne关于个人金融安全17条黄金守则—财富之道 批量裁剪矢量数据的几种途径 小而美的软件 想回到过去 热!热!热! 那么近,又那么远——遥望 为什么win笔记本触摸板没有mac好用呢 一只猫 二月份的检讨 自定义Cesium缩放控件 线段简化的几种算法 今天看球了吗? HDF转为GeoTIFF QGIS插件编写 乐高风格地图 基于Python的遥感可视化记录 使用Python提取遥感影像中的土壤线 接触pandas 拆分-应用-联合 阳光打在我身上 淘宝商品信息可视化
QQ音乐评论可视化
WSH · 2021-04-30 · via WSH

目录

    • 数据预处理
    • 年份可视化
    • 月份可视化
    • 每日可视化
    • 时段可视化

以前写的可视化记录。

评论是我几天前爬取的,歌曲是周董的《轨迹》,一开始想使用snownlp作情感分析,但我看了下评论内容,情感倾向很明显,没有分析的必要。这些数据都带有评论时间,也算是时间序列数据,正好拿它作可视化展示。

本记录针对爬取的QQ音乐评论作可视化展示,按时间颗粒度划分如下:

  • 年份可视化 聚合每年产生的评论数据
  • 月份可视化 聚合每月产生的评论数据
  • 每日可视化 将每日产生的评论数据可视化
  • 时段可视化 聚合一天之内每时段的评论数据,时段按时间线分为:凌晨、上午、中午、下午、晚上和深夜

目录

[TOC]


数据预处理

首先来看数据,总共有12673条记录,包含三个维度,分别为昵称、评论内容、评论日期。通过info函数查看信息,发现三个维度非空数目不一致,每个维度均有缺失值。如果日期缺失,势必会影响接下来的聚合,使用ffill方法向前填充,将缺失值的前一个值填充为自己的值。

img

img

info查看信息

img

年份可视化

使用resample方法向下采样,然后聚合,统计每年的评论个数。清洗好数据后,统计每年产生的数量,之后使用pyecharts绘制条形图,它是基于百度开源的JavaScript绘图库echarts的Python封装,感兴趣的同学请移步至官方文档,此处不再详细介绍。

img

img

最早只爬取到2017年的评论,最新是2021年4月27日,四年间年评论量分布不均匀,2017年最少,最大还不知道,因为2021年还没完呢。

月份可视化

同一个函数进行向下重采样,只是参数不一致而已,聚合统计后使用matploblib绘制折线图统计图,代码如下:

img

img点击并拖拽以移动

每日可视化

还是那个resample函数,将每年的每一天中产生的评论聚合,共五年(2017-2021),但2017年和2021年不全,数据记录有点大,使用日历图作可视化,代码如下:

img

img

img

img

img

img

时段可视化

将一天24个小时分为6个时段,划分如下:

  • 03:00----06:00----凌晨
  • 06:00----12:00----下午
  • 12:00----14:00----中午
  • 14:00----19:00----下午
  • 19:00----22:00----晚上
  • 22:00----03:00----深夜

每条记录包含日期和时间,精确到分钟,如何把小时数给提取出来呢,Pandas目前我好像没有学到这个技能或者说没有(肯定是我没有学到。我的方法是把每条日期记录当成字符串,然后转换成datetime对象,再将转换成时间字符串时仅保留小时数,最后转换为int64类型(转的头都晕了:cry:!

最后一步就是遍历小时数,判断属于哪一个时段,该过程需要使用apply函数,并且传入一个自定义一个函数用来判断时段。

img

img

img

右边两列就是小时数和时段标签

绘制南丁格尔图

img

基于pyecharts

img

是不是人在深夜时情绪会更丰富呢?