文章目录
大家好,我是 👉【Python当打之年(点击跳转)】
本期我们利用Python分析某APP全国大学生用户数据,看看:
- 哪个学校的学生最喜欢使用快手APP
- Android、IOS、PC三大平台用户占比份额
- 全国哪些城市(学校所在地)的学生使用频次最高
- 全国哪些省份的生源最喜欢使用快手APP
- …
希望对小伙伴们有所帮助,如有疑问或者需要改进的地方可以私信小编。
涉及到的库:
- Pandas — 数据处理
- Pyecharts — 数据可视化
可视化部分:
- 柱状图 — Bar
- 地图 — Map
- 组合组件 — Grid
- 象形图 — PictorialBar
🏳️🌈 1. 导入模块
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Map
from pyecharts.charts import Bar
from pyecharts.charts import Grid
from pyecharts.charts import PictorialBar
🏳️🌈 2. Pandas数据处理
2.1 读取数据
df = pd.read_csv('kuaishou.csv')
df.head(10)
2.2 查看索引、数据类型和内存信息
一共 704726 条数据。
2.3 将学校城市拆分成两列:城市、省份
df[['学校省份','学校城市']] = df['学校城市'].str.split(':',expand=True)
df.head(10)
🏳️🌈 3. Pyecharts数据可视化
3.1 哪个学校学生使用频次最多
bar = (
Bar(init_opts=opts.InitOpts(width='1000px', height='1000px',bg_color='#0d0735'))
.add_xaxis(df_rate_tmp['学校'].tolist())
.add_yaxis("", df_rate_tmp['频次'].tolist())
.set_series_opts(label_opts=opts.LabelOpts(position="right",
font_size=12,
font_weight='bold',
formatter='{c} 次'),
itemstyle_opts={"normal": {
"barBorderRadius": [30, 30, 30, 30],
'shadowBlur': 10,
'shadowColor': 'rgba(0,191,255,0.5)',
'shadowOffsetY': 1,
'opacity': 0.8
}
}
)
.set_global_opts(
xaxis_opts=opts.AxisOpts(is_show=False,),
yaxis_opts=opts.AxisOpts(
axislabel_opts=opts.LabelOpts(font_size=13,color='#fff200'),
axistick_opts=opts.AxisTickOpts(is_show=False),
axisline_opts=opts.AxisLineOpts(is_show=False)
),
title_opts=opts.TitleOpts(title="学生使用频次最多的学校",pos_left='center',pos_top='1%',
title_textstyle_opts=opts.TextStyleOpts(font_size=22,color="#38d9a9")),
visualmap_opts=opts.VisualMapOpts(is_show=False,is_piecewise=False),
graphic_opts=[
opts.GraphicGroup(
graphic_item=opts.GraphicItem(left="5%", top="5%"),
children=[
opts.GraphicRect(
graphic_item=opts.GraphicItem(
z=0, left="center", top="middle"
),
graphic_shape_opts=opts.GraphicShapeOpts(width=900, height=900),
graphic_basicstyle_opts=opts.GraphicBasicStyleOpts(
fill="rgba(0,0,0,0)",
stroke="#fff",
line_width=2,
shadow_blur=20,
shadow_offset_x=5,
shadow_offset_y=5,
shadow_color="#4169E1",
),
),
],
)
]
)
.reversal_axis()
)
- 浙江水利水电学院学生以接近50000的快手使用频次高居榜首,武汉工程大学、福建医科大学、汉口学院紧随其后,快手使用频次接近40000次
3.2 前五学校学生各平台使用频次
- 三大平台的使用情况依次为:Android、ISO、PC,这也符合目前的电子设备使用行情(手机>电脑)
3.3 哪个省份的生源使用快手APP数量最多
map_chart = Map(init_opts=opts.InitOpts(theme='light',width='1000px', height='600px',bg_color='#26A69A'))
map_chart.add('',
[list(z) for z in zip(province_num['学生省份'].tolist(), province_num['数量'].tolist())],
maptype='china',
is_map_symbol_show=False,
itemstyle_opts={
'normal': {
'shadowColor': 'rgba(0, 0, 0, .5)',
'shadowBlur': 5,
'shadowOffsetY': 0,
'shadowOffsetX': 0,
'borderColor': '#fff'
}
}
)
map_chart.set_global_opts(
visualmap_opts=opts.VisualMapOpts(
max_= 40000,
is_piecewise=True,
is_show=True,
split_number = 8,
pos_top='60%',
pos_left='8%',
range_text=['使用频次:', ''],
range_color=['#f7f4f9','#e7e1ef','#d4b9da','#c994c7','#df65b0','#e7298a','#ce1256','#91003f']
),
legend_opts=opts.LegendOpts(is_show=False),
tooltip_opts=opts.TooltipOpts(is_show=True,trigger='item',formatter='{b}: {c}'),
title_opts=dict(text='各省份生源数量',left='center',top='8%',textStyle=dict(color='#DC143C', font_size=20, font_weight='bold')),)
map_chart.render_notebook()
- 从各省份生源数量分布来看:东部沿海地区使用快手APP的学生数量要明显高于中部和西部地区
3.4 快手APP男女用户比例
- 男女用户比例:男性用户(54.55%)要比女性用户(45.45%)高出大概10%
🏳️🌈 4. 在线运行地址
以上就是本期为大家整理的全部内容了,赶快练习起来吧,原创不易,喜欢的朋友可以点赞、收藏也可以分享(注明出处)让更多人知道。