文章目录
- 🏳️🌈 1. 导入模块
- 🏳️🌈 2. Pandas数据处理
- 2.1 读取数据
- 2.2 查看数据信息
- 2.3 日期处理,提取年份、月份
- 2.4 经费处理
- 2.5 天数处理
- 🏳️🌈 3. Pyecharts数据可视化
- 3.1 出发日期_年份分布
- 3.2 出发日期_月份分布
- 3.3 出行天数分布
- 3.4 旅游途经点分布
- 3.5 出行团体占比
- 3.6 人均消费区间占比
- 3.7 出行类型标签统计
- 3.8 旅游行程景点词云
- 🏳️🌈 4. 可视化项目源码+数据
大家好,我是 👉【Python当打之年(点击跳转)】
本期利用 python 分析一下「去哪网海南旅游攻略数据」 ,看看海南哪些旅游景点最受大家喜爱,哪个时间段旅游的朋友比较多,最受大家欢迎的旅行方式有哪些,以及旅行目的 等,希望对大家有所帮助,如有疑问或者需要改进的地方可以联系小编。
涉及到的库:
- Pandas — 数据处理
- Pyecharts — 数据可视化
🏳️🌈 1. 导入模块
import pandas as pd
from pyecharts.charts import Line
from pyecharts.charts import Bar
from pyecharts.charts import Pie
from pyecharts.charts import Scatter
from pyecharts.charts import WordCloud
from pyecharts import options as opts
import warnings
warnings.filterwarnings('ignore')
🏳️🌈 2. Pandas数据处理
2.1 读取数据
df = pd.read_excel("./去哪网海南攻略数据.xlsx")
2.2 查看数据信息
df.info()
2.3 日期处理,提取年份、月份
df['出发日期_年'] = [int(i.split('-')[0]) for i in df['出发日期'].tolist()]
df['出发日期_月'] = [int(i.split('-')[1]) for i in df['出发日期'].tolist()]
2.4 经费处理
fee = [int(i.replace('人均','').replace('元','')) for i in df_fee['人均消费'].tolist()]
df_fee['人均消费'] = fee
2.5 天数处理
df['天数'] = df['天数'].str[1:-1]
df['天数'] = df['天数'].astype('int')
🏳️🌈 3. Pyecharts数据可视化
3.1 出发日期_年份分布
def get_chart1():
chart = (
Bar()
.add_xaxis(x_data)
.add_yaxis("", y_data)
.set_global_opts(
title_opts=opts.TitleOpts(
title="1-出发日期_年",
pos_top='2%',
pos_left="center",
),
legend_opts=opts.LegendOpts(is_show=False),
xaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=False)),
yaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=False)),
visualmap_opts=opts.VisualMapOpts(is_show=False,),
)
)
return chart
-
2014、2015、2016年的攻略数量相较于其他年份明显较多、2017-2021年趋于平稳。
-
近三年时间大概由于时间比较近,加之疫情原因,所以攻略数量较少。
3.2 出发日期_月份分布
def get_chart2():
chart = (
Line()
.add_xaxis(x_data)
.add_yaxis("", y_data)
.set_global_opts(
title_opts=opts.TitleOpts(
title="2-每月攻略数量",
pos_top='2%',
pos_left="center",
),
visualmap_opts=opts.VisualMapOpts(is_show=False),
legend_opts=opts.LegendOpts(is_show=False),
)
)
return chart
- 1月、12月的攻略数比较高,大概占到了总数量的20%,反而6月、7月、8月的数量相对低一些。
3.3 出行天数分布
- 从出行天数上来看,大多集中在一周(5天)左右,也有少量半个月、一个月的旅游时间。
3.4 旅游途经点分布
- 首当其冲当然是三亚(1853)啦!远超排在第二的海口(182),基本是10倍之多,紧随其后的是陵水(108)、万宁(60)、文昌(46)等地。
3.5 出行团体占比
def get_chart3():
chart = (
Pie()
.add("", [list(z) for z in zip(x_data, y_data)])
.set_global_opts(
title_opts=opts.TitleOpts(
title="5-出行团体占比",
pos_top='2%',
pos_left="center"
),
legend_opts=opts.LegendOpts(is_show=False),
visualmap_opts=opts.VisualMapOpts(is_show=False,),
)
.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {d}%"))
)
return chart
- 出行团体方面大多以好友(22%)、情侣(21%)和家庭(20%)团体居多。
3.6 人均消费区间占比
- 人均消费3000-5000元居多,占比46%,1000-3000元占比28%。
3.7 出行类型标签统计
3.8 旅游行程景点词云
def get_chart4():
chart = (
WordCloud()
.add("",words,word_size_range=[10,50])
.set_global_opts(
title_opts=opts.TitleOpts(
title='8-旅游行程景点词云',
pos_top='2%',
pos_left="center",
),
legend_opts=opts.LegendOpts(is_show=False),
visualmap_opts=opts.VisualMapOpts(is_show=False),
)
)
return chart
- 亚龙湾、三亚湾、蜈支洲岛、大东海、天涯海角、海棠湾等景点更受驴友的喜爱。
🏳️🌈 4. 可视化项目源码+数据
点击跳转:【全部可视化项目源码+数据】
以上就是本期为大家整理的全部内容了,赶快练习起来吧,原创不易,喜欢的朋友可以点赞、收藏也可以分享(注明出处)让更多人知道。