疫情后来场说走就走的旅行,Python制作一份可视化的旅行攻略

本文主要是介绍疫情后来场说走就走的旅行,Python制作一份可视化的旅行攻略,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

疫情结束后,你最想做什么?摘掉口罩,出门晒晒太阳;吃货们,是去韩国菜?还是撸串?还是火锅?和家人待几天,弥补春节缺失的陪伴;走进曾经熟悉的电影院,把错过的贺岁大片全部都要一一补上。

 

当疫情结束后,是否想要去英雄城市武汉,看看樱花,在户部巷吃上一碗热干面,看一看车来车往的长江大桥。是否将有更多的旅行计划,不管是哪里的美景,都想要去看看。

 

旅行是为了放松心情、体验地方特色。为了一场完美的旅行,制作一份详细的旅行攻略是必不可少的。为此小编在上一篇文章中已爬取了《去哪儿》攻略库,获取了近3.8份攻略数据。数据字段有:区域、目的地、标题、链接、攻略作者、出发日期、天数、照片数、人数、玩法、费用、阅读数、点赞数、评论数、行程等。

 

 

 

 

 

数据预处理

对于获取的数据,我们需要进行进一步的处理以满足分析的需求,我们主要做的数据处理步骤如下:

  • 删除重复值
  • 修正字段
  • 删除不需要字段

具体代码实现

#数据读取
import pandas as pd
import re
#数据读取
base_data =  pd.read_excel('trip_data_merge.xlsx')
#删除重复值
base_data.drop_duplicates(inplace=True)
#分析中不需要的字段
base_data = base_data.drop(['链接'], axis=1)
#字段修正,方便统计
base_data['天数']= base_data['天数'].apply(lambda x :re.sub("\D", "", x) )
base_data['照片数']= base_data['照片数'].apply(lambda x :re.sub("\D", "", x) )
base_data['费用']= base_data['费用'].apply(lambda x :re.sub("\D", "", str(x) ))
base_data['费用'] = base_data['费用'].apply(lambda x : eval(x) if len(x)>0 else 0 )
base_data['date']= base_data['出发日期'].apply(lambda x :x.split( )[0] )
base_data['date_year']= base_data['出发日期'].apply(lambda x :x.split( )[0][:4])
base_data['阅读数']= base_data['阅读数'].apply(lambda x : int(re.sub("\D", "", str(x)))*10000 if str(x).find('万') else x)

数据分析、可视化

 

费用问题

外出旅行,首先要考虑的肯定的费用问题。因疫情原因,在费用的数据分析统计中,我们剔除了2020年的数据,考虑了2017年、2018年、2019年的数据。

 

 

 

上图展示了近三年主要热门目的地人均消费情况,包含国内、国外热门地区。根据数据统计,国外人均平均消费为9461元,国内为3313元,游客在国外消费是国内消费的2.85倍。国内人均消费的排名前四名:丽江、三亚、香港、上海。在国外消费前四名:马尔代夫、法国、美国、日本。为什么游客在马尔代夫的人均消费比上海人均消费高达6倍的差距呢?

 

游客人群

 

马尔代夫游客人群分布

 

 

 

上海游客人群分布

 

 

 

马尔代夫,一个名字听起来就让人浮想联翩的地方,被称作上帝抛洒在人间的项链,人间最后的乐园,吸引了很多人去度假休闲,其中情侣占比高达54.8%,再加上机酒消费,这也成为马尔代夫消费高的一个重要原因,上海游客人群比较分散,其中情侣占比15%左右,一人旅行、三五好友占比相对较高。

逗留时长

上海游客逗留时长

 

 

 

马尔代夫游客逗留时长

 

 

 

判断一个城市对游客对心引力,游客逗留时间是最核心指标。从上图我们可以看到马尔代夫的逗留时间占比中4-7天、8-10天合计占比高达80%以上。上海逗留时间在1-3天占比为52.45%,4-7天、8-10天合计占比约为41%,这样是马尔代夫人均消费高的一个重要因素。

玩法攻略

我们可以看到,美食、购物+美食、短途周末、海滨海岛、自驾等玩法是大家的最爱,探险、环游、骑行等也收到不少人的喜爱,你喜欢什么样的玩法呢?

打卡景点

去一个地方去旅行,有些景点必须要去的,对于一个陌生的城市,怎么样可以快速确定打卡景点呢?小编选择了上海、成都、武汉,看看这些是否有遗漏的打卡景点呢。

 

 

 

 

最赞路线

想去的打卡景点都有了,我们要有一个最完美的路线,小编在下面梳理一下网友点赞最高的路线,你是否满意呢?下面进行图片展示。

 

 

结论

 

至此,小编已带大家了解一下旅游目的地的平均消费情况、玩法攻略、打卡攻略、最赞路线等,如果你有什么问题,欢迎评论区留言,因篇幅展示问题,附上部分核心代码

核心代码展示

#上海游客旅游逗留天数占比
from pyecharts import options as opts
from pyecharts.charts import Pie
from pyecharts.faker import Fakerc = (Pie().add("",[list(z) for z in zip(list(base_data_city_day_sh['天数']), list(base_data_city_day_sh['num']))],radius=["40%", "55%"],label_opts=opts.LabelOpts(position="outside",formatter="{a|{a}}{abg|}\n{hr|}\n {b|{b}: }{c}  {per|{d}%}  ",background_color="#eee",border_color="#aaa",border_width=1,border_radius=4,rich={"a": {"color": "#999", "lineHeight": 22, "align": "center"},"abg": {"backgroundColor": "#e3e3e3","width": "100%","align": "right","height": 22,"borderRadius": [4, 4, 0, 0],},"hr": {"borderColor": "#aaa","width": "100%","borderWidth": 0.5,"height": 0,},"b": {"fontSize": 16, "lineHeight": 33},"per": {"color": "#eee","backgroundColor": "#334455","padding": [2, 4],"borderRadius": 2,},},),).set_global_opts(title_opts=opts.TitleOpts(title="上海游客逗留时间占比")).render("上海游客逗留时间占比.html")
)

 

词云图

import stylecloud
from IPython.display import Image # 用于在jupyter lab中显示本地图片
result_gap = ' '.join(result)
# 绘制词云图
stylecloud.gen_stylecloud(text=result_gap, max_words=1000,collocations=False,font_path=r'msyh.ttf',icon_name='fas fa-plane-departure',size=624,output_name='打卡词云图.png')Image(filename='打卡词云图.png') 

这篇关于疫情后来场说走就走的旅行,Python制作一份可视化的旅行攻略的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/362549

相关文章

使用Python创建一个功能完整的Windows风格计算器程序

《使用Python创建一个功能完整的Windows风格计算器程序》:本文主要介绍如何使用Python和Tkinter创建一个功能完整的Windows风格计算器程序,包括基本运算、高级科学计算(如三... 目录python实现Windows系统计算器程序(含高级功能)1. 使用Tkinter实现基础计算器2.

Git可视化管理工具(SourceTree)使用操作大全经典

《Git可视化管理工具(SourceTree)使用操作大全经典》本文详细介绍了SourceTree作为Git可视化管理工具的常用操作,包括连接远程仓库、添加SSH密钥、克隆仓库、设置默认项目目录、代码... 目录前言:连接Gitee or github,获取代码:在SourceTree中添加SSH密钥:Cl

Python开发文字版随机事件游戏的项目实例

《Python开发文字版随机事件游戏的项目实例》随机事件游戏是一种通过生成不可预测的事件来增强游戏体验的类型,在这篇博文中,我们将使用Python开发一款文字版随机事件游戏,通过这个项目,读者不仅能够... 目录项目概述2.1 游戏概念2.2 游戏特色2.3 目标玩家群体技术选择与环境准备3.1 开发环境3

Python中模块graphviz使用入门

《Python中模块graphviz使用入门》graphviz是一个用于创建和操作图形的Python库,本文主要介绍了Python中模块graphviz使用入门,具有一定的参考价值,感兴趣的可以了解一... 目录1.安装2. 基本用法2.1 输出图像格式2.2 图像style设置2.3 属性2.4 子图和聚

Python使用Matplotlib绘制3D曲面图详解

《Python使用Matplotlib绘制3D曲面图详解》:本文主要介绍Python使用Matplotlib绘制3D曲面图,在Python中,使用Matplotlib库绘制3D曲面图可以通过mpl... 目录准备工作绘制简单的 3D 曲面图绘制 3D 曲面图添加线框和透明度控制图形视角Matplotlib

Pandas中统计汇总可视化函数plot()的使用

《Pandas中统计汇总可视化函数plot()的使用》Pandas提供了许多强大的数据处理和分析功能,其中plot()函数就是其可视化功能的一个重要组成部分,本文主要介绍了Pandas中统计汇总可视化... 目录一、plot()函数简介二、plot()函数的基本用法三、plot()函数的参数详解四、使用pl

一文教你Python如何快速精准抓取网页数据

《一文教你Python如何快速精准抓取网页数据》这篇文章主要为大家详细介绍了如何利用Python实现快速精准抓取网页数据,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录1. 准备工作2. 基础爬虫实现3. 高级功能扩展3.1 抓取文章详情3.2 保存数据到文件4. 完整示例

使用Python实现IP地址和端口状态检测与监控

《使用Python实现IP地址和端口状态检测与监控》在网络运维和服务器管理中,IP地址和端口的可用性监控是保障业务连续性的基础需求,本文将带你用Python从零打造一个高可用IP监控系统,感兴趣的小伙... 目录概述:为什么需要IP监控系统使用步骤说明1. 环境准备2. 系统部署3. 核心功能配置系统效果展

基于Python打造一个智能单词管理神器

《基于Python打造一个智能单词管理神器》这篇文章主要为大家详细介绍了如何使用Python打造一个智能单词管理神器,从查询到导出的一站式解决,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 项目概述:为什么需要这个工具2. 环境搭建与快速入门2.1 环境要求2.2 首次运行配置3. 核心功能使用指

Python实现微信自动锁定工具

《Python实现微信自动锁定工具》在数字化办公时代,微信已成为职场沟通的重要工具,但临时离开时忘记锁屏可能导致敏感信息泄露,下面我们就来看看如何使用Python打造一个微信自动锁定工具吧... 目录引言:当微信隐私遇到自动化守护效果展示核心功能全景图技术亮点深度解析1. 无操作检测引擎2. 微信路径智能获