写在前面
最近,我在知乎上看到一个关于抖音的问题。
里面提到了,目前我国人均每天刷短视频110分钟。
1
看这数据,看来我又被平均了。
不过老实说,只要一打开抖音,确实是有一种停不下来的感觉~
所以还是少刷抖音,多看书,多写代码。要不然时间全流逝了。
这次给大家用数据分析一下在抖音上,什么类型的视频最受欢迎。
Jupyter代码,数据可视化&分析
"""
当然在学习Python的道路上肯定会困难,没有好的学习资料,怎么去学习呢?
学习Python中有不明白推荐加入交流Q群号:928946953
群里有志同道合的小伙伴,互帮互助, 群里有不错的视频学习教程和PDF!
还有大牛解答!
"""
from pyecharts.charts import Pie, Bar, TreeMap, Map, Geo
from wordcloud import WordCloud, ImageColorGenerator
from pyecharts import options as opts
from pyecharts.globals import ThemeType
import matplotlib.pyplot as plt
from PIL import Image
import pandas as pd
import numpy as np
import jieba
In [2]:
df = pd.read_csv('../file/douyin.csv',encoding = 'utf-8-sig')
df.head()
Out[2]:
name |
gender |
country |
province |
city |
location |
category |
fans |
videos |
likes |
comments |
shares |
following |
school |
custom_verify |
enterprise_verify |
signature |
|
0 |
人民日报 |
0 |
中国 |
北京 |
北京 |
北京 |
政企 |
117259000 |
2427 |
1165446000 |
11906782048 |
9089061412 |
18 |
NaN |
NaN |
人民日报官方账号 |
参与、沟通、记录时代。 |
1 |
央视新闻 |
0 |
中国 |
北京 |
北京 |
北京 |
政企 |
105648000 |
3681 |
3814571666 |
2603872833 |
1989050522 |
27 |
NaN |
央视新闻官方账号 |
央视新闻官方抖音号 |
本宝宝暂时还没想到个性签名 |
2 |
陈赫 |
1 |
中国 |
NaN |
上海 |
上海 |
明星 |
68374000 |
422 |
570096000 |
430908721 |
117639297 |
131 |
上海戏剧学院 |
演员陈赫 |
NaN |
帅到没朋友 ♂️有东西直播间 1⃣️1⃣️1⃣️8⃣️ ☑️公众号➰[陈赫] |
3 |
Dear-迪丽热巴 |
0 |
NaN |
NaN |
NaN |
NaN |
明星 |
49790000 |
29 |
181167000 |
202448645 |
151645265 |
0 |
NaN |
演员 |
NaN |
NaN |
4 |
毒舌电影 |
1 |
中国 |
广东 |
广州 |
广州 |
剧情 |
46355000 |
616 |
820393000 |
28026109 |
13005392 |
24 |
NaN |
优质影视自媒体、抖音影评团成员 |
NaN |
看电影, 可以改变人生。 商务邮:dsmovie@youhaoxi.cn ❤️ 日历预售... |
In [27]:
df.loc[df.gender == '0', 'gender'] = '未知'
df.loc[df.gender == '1', 'gender'] = '男性'
df.loc[df.gender == '2', 'gender'] = '女性'
# 根据性别分组
gender_message = df.groupby(['gender'])
# 对分组后的结果进行计数
gender_com = gender_message['gender'].agg(['count'])
gender_com.reset_index(inplace=True)
# 饼图数据
attr = gender_com['gender']
v1 = gender_com['count']
# 初始化配置
pie = Pie(init_opts=opts.InitOpts(width="800px", height="400px",theme=ThemeType.LIGHT))
# 添加数据,设置半径
pie.add("", [list(z) for z in zip(attr, v1)], radius=["40%", "75%"])
# 设置全局配置项,标题、图例、工具箱(下载图片)
pie.set_global_opts(title_opts&