日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

用Python分析元旦旅游热门城市,告诉你哪些景点性价比更高

發(fā)布時(shí)間:2024/9/15 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用Python分析元旦旅游热门城市,告诉你哪些景点性价比更高 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

元旦到了,難得的3天小長(zhǎng)假,玩肯定是要去玩的,但去哪兒玩是個(gè)問(wèn)題。于是,J哥以旅游熱門(mén)城市廈門(mén)為例,用Python獲取了去哪兒網(wǎng)的相關(guān)景點(diǎn)數(shù)據(jù),包括景點(diǎn)名稱(chēng)、地區(qū)、評(píng)分、銷(xiāo)量、價(jià)格、坐標(biāo)等字段,對(duì)數(shù)據(jù)進(jìn)行可視化并作簡(jiǎn)單分析,以求找到性?xún)r(jià)比較高的景點(diǎn)

數(shù)據(jù)獲取

去哪兒網(wǎng)數(shù)據(jù)采集相對(duì)簡(jiǎn)單,找到真實(shí)url后,構(gòu)造參數(shù)拼接,用request請(qǐng)求到j(luò)son數(shù)據(jù),以追加模式將數(shù)據(jù)存儲(chǔ)為csv文件即可。

爬蟲(chóng)核心代碼如下:

# -*- coding = uft-8 -*- # @Time : 2020/12/25 9:47 下午 # @Author : 公眾號(hào) 菜J學(xué)Python # @File : 去哪兒.pyimport requests import random from time import sleep import csv import pandas as pd from fake_useragent import UserAgentdef get_data(keyword,page):ua = UserAgent(verify_ssl=False)headers = {"User-Agent": ua.random}url = f'http://piao.qunar.com/ticket/list.json?keyword={keyword}&region=&from=mpl_search_suggest&page={page}'res = requests.request("GET", url,headers=headers)sleep(random.uniform(1, 2))try:res_json = res.json()#print(res_json)sight_List = res_json['data']['sightList']print(sight_List)except:passif __name__ == '__main__':keyword = "廈門(mén)"for page in range(1,100): #控制頁(yè)數(shù)print(f"正在提取第{page}頁(yè)")sleep(random.uniform(1, 2))get_data(keyword,page)

數(shù)據(jù)處理

導(dǎo)入相關(guān)包

首先導(dǎo)入數(shù)據(jù)處理和數(shù)據(jù)可視化相關(guān)第三方庫(kù),便于后續(xù)操作。

import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns %matplotlib inline plt.rcParams['font.sans-serif'] = ['SimHei'] # 設(shè)置加載的字體名 plt.rcParams['axes.unicode_minus'] = False # 解決保存圖像是負(fù)號(hào)'-'顯示為方塊的問(wèn)題 import jieba import re from pyecharts.charts import * from pyecharts import options as opts from pyecharts.globals import ThemeType import stylecloud from IPython.display import Image

導(dǎo)入景點(diǎn)數(shù)據(jù)

用pandas讀取爬取的csv格式景點(diǎn)數(shù)據(jù)并預(yù)覽。

df = pd.read_csv("/菜J學(xué)Python/旅游/廈門(mén)旅游景點(diǎn).csv",names=['name', 'star', 'score','qunarPrice','saleCount','districts','point','intro']) df.head()

刪除重復(fù)數(shù)據(jù)

網(wǎng)站存在一定的重復(fù)數(shù)據(jù),需要進(jìn)行剔除。

df = df.drop_duplicates()

查看數(shù)據(jù)信息

查看字段類(lèi)型和缺失值情況,符合分析需要,無(wú)需另作處理。

df.info() <class 'pandas.core.frame.DataFrame'>Int64Index: 422 entries, 0 to 423Data columns (total 8 columns):# Column Non-Null Count Dtype --- ------ -------------- ----- 0 name 422 non-null object 1 star 422 non-null object 2 score 422 non-null float643 qunarPrice 422 non-null float644 saleCount 422 non-null int64 5 districts 422 non-null object 6 point 422 non-null object 7 intro 377 non-null object dtypes: float64(2), int64(1), object(5)memory usage: 29.7+ KB

描述性統(tǒng)計(jì)

從描述性統(tǒng)計(jì)表可知,剔除重復(fù)數(shù)據(jù)后,剩余424個(gè)景點(diǎn),門(mén)票均價(jià)為40元

color_map = sns.light_palette('orange', as_cmap=True) # light_palette調(diào)色板 df.describe().style.background_gradient(color_map)

可視化分析

景點(diǎn)介紹

通過(guò)對(duì)廈門(mén)景點(diǎn)介紹文本進(jìn)行詞云圖繪制,我們很容易看出廈門(mén)的特點(diǎn)。典型的海濱休閑城市,帆船、鼓浪嶼、游艇等詞被大量提及,建筑、博物館等詞也有一定提及,體現(xiàn)出廈門(mén)濃厚的人文氣息

#繪制詞云圖 text1 = get_cut_words(content_series=df['intro']) stylecloud.gen_stylecloud(text=' '.join(text1), max_words=100,collocations=False,font_path='simhei.ttf',icon_name='fas fa-heart',size=653,#palette='matplotlib.Inferno_9',output_name='./offer.png') Image(filename='./xiamen.png')

景點(diǎn)分布

利用kepler.gl繪制廈門(mén)市旅游景點(diǎn)分布地圖,同時(shí)以圓圈的大小表示門(mén)票月銷(xiāo)量的大小,我們可以很清晰的看到,廈門(mén)市景點(diǎn)集中分布在思明區(qū)和湖里區(qū),其他區(qū)域分布較為分散。尤其是思明區(qū),門(mén)票銷(xiāo)量遙遙領(lǐng)先其他區(qū)域。

df["lon"] = df["point"].str.split(",",expand=True)[0] df["lat"] = df["point"].str.split(",",expand=True)[1] df.to_csv("/菜J學(xué)Python/data.csv")

評(píng)分TOP10景點(diǎn)

從景點(diǎn)評(píng)分來(lái)看,廈門(mén)大學(xué)評(píng)分最高,5分滿(mǎn)分。其次是鼓浪嶼和南普陀寺,分別為4.9分和4.6分。難怪有人說(shuō),沒(méi)去過(guò)廈大和鼓浪嶼,相當(dāng)于沒(méi)來(lái)過(guò)廈門(mén)。

df_score = df.pivot_table(index='name',values='score') df_score.sort_values('score',inplace=True,ascending=False) df_score[:10]

月銷(xiāo)量TOP10景點(diǎn)

從門(mén)票月銷(xiāo)量來(lái)看,鼓浪嶼排第一,月銷(xiāo)量1230,其次是廈門(mén)園林植物園和鼓浪嶼往返輪渡。廈門(mén)方特夢(mèng)幻王國(guó)也有600以上的月銷(xiāo)量。

df_saleCount = df.pivot_table(index='name',values='saleCount') df_saleCount.sort_values('saleCount',inplace=True,ascending=False) df_saleCount[:10]

價(jià)格TOP20景點(diǎn)

從景點(diǎn)價(jià)格來(lái)看,玩游艇、直升機(jī)、帆船類(lèi)的活動(dòng)花銷(xiāo)較大,另外,廈門(mén)方特價(jià)格也不便宜,如果對(duì)價(jià)格不敏感可以考慮,如果是窮游可以提前避開(kāi)。

df_qunarPrice = df.pivot_table(index='name',values='qunarPrice') df_qunarPrice.sort_values('qunarPrice',inplace=True,ascending=False) df_qunarPrice[:20]

月銷(xiāo)售額TOP20景點(diǎn)

由于廈門(mén)近一個(gè)月景點(diǎn)銷(xiāo)量的變化幅度小于價(jià)格的變化幅度,銷(xiāo)售額受價(jià)格影響更大。從以下圖中也可以看出,月銷(xiāo)售額較大的景點(diǎn)仍然是游艇、方特之類(lèi)。

df["saleTotal"] = df["qunarPrice"]*df["saleCount"] df_saleTotal = df.pivot_table(index='name',values='saleTotal') df_saleTotal.sort_values('saleTotal',inplace=True,ascending=False) df_saleTotal[:20]

景點(diǎn)等級(jí)分布

從廈門(mén)景點(diǎn)等級(jí)分布來(lái)看,3A以上等級(jí)景點(diǎn)占比不到5%

df_star = df["star"].value_counts() df_star = df_star.sort_values(ascending=False) #print(df_star) c = (Pie(init_opts=opts.InitOpts(theme=ThemeType.WALDEN)).add("",[list(z) for z in zip(df_star.index.to_list(),df_star.to_list())]).set_global_opts(legend_opts = opts.LegendOpts(is_show = False),title_opts=opts.TitleOpts(title="景點(diǎn)等級(jí)分布",subtitle="數(shù)據(jù)來(lái)源:去哪兒網(wǎng)\n制圖:菜J學(xué)Python",pos_top="0.5%",pos_left = 'left')).set_series_opts(label_opts=opts.LabelOpts(formatter="{b}:ozvdkddzhkzd%",font_size=16))) c.render_notebook() df[df["star"]!='無(wú)'].sort_values("star",ascending=False)

以下為篩選出的部分3A及以上景點(diǎn):

小結(jié)

通過(guò)以上簡(jiǎn)單的分析,我們大致可以獲得以下幾點(diǎn)啟發(fā):?

1.廈門(mén)是典型的海濱休閑城市,具有豐富的海洋和人文景觀;

2.廈門(mén)旅游景點(diǎn)主要集中分布在思明區(qū),其他區(qū)域較為分散;

3.廈門(mén)大學(xué)口碑最高,其次才是鼓浪嶼;

4.鼓浪嶼門(mén)票銷(xiāo)量遙遙領(lǐng)先廈門(mén)其他景點(diǎn);

5.消費(fèi)較高的景點(diǎn)或活動(dòng)包括游艇、帆船和方特。

溫馨提示:疫情還未完全散去,元旦游玩盡量避開(kāi)風(fēng)險(xiǎn)區(qū)域。

源碼:

鏈接:https://pan.baidu.com/s/119p02O7RyoQ1z1glEVG24Q? 密碼:n4ub

推薦閱讀

平時(shí)都逛哪些技術(shù)網(wǎng)站?(程序員必備58個(gè)網(wǎng)站匯總)

肝!精心整理了 50 個(gè)數(shù)據(jù)源網(wǎng)站!

3種Python數(shù)據(jù)結(jié)構(gòu),13種創(chuàng)建方法,這個(gè)總結(jié),超贊!

總結(jié)

以上是生活随笔為你收集整理的用Python分析元旦旅游热门城市,告诉你哪些景点性价比更高的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。