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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

【Python】利用 Python 分析了一波月饼,我得出的结论是?

發布時間:2025/3/12 python 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Python】利用 Python 分析了一波月饼,我得出的结论是? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者:Cherich_sun
來源:

https://blog.csdn.net/w_yuqing/article/details/119888532

本文為讀者投稿

馬上八月十五了,又迎來了一年一度的中秋節。中秋節起源于古代對月的崇拜,至今已歷史悠久。

中秋節到了,各地都有自己的習俗。但中秋節的習俗共同之處不外乎:祭月、賞月、觀花燈、吃月餅。月餅在我印象中,記憶最深的還是"五仁"口味,是家里長輩們的最愛。還記得小時候最討厭吃到"五仁"里面的"紅絲絲綠絲絲"。

后來也吃到有一些非常好吃的月餅,今天特意上網搜了一下,見到好多沒吃過的口味,看的眼花繚亂,所以我要忍著口水用 Python 給大家分析看看什么口味最好吃,幫助還沒買月餅的小伙伴做個選購參考。

實現方式:Python + Pandas(數據處理) + Matplotlib(可視化) + boken(可視化聯動)

一、分析目的

  • 1)哪個種類的月餅銷量最高?

  • 2)月餅的價格區間怎么樣?

  • 3)TOP 15 口碑較好的品牌?

  • 4)TOP 10 好吃的月餅口味?

  • 5)TOP 10 月餅銷量最高店鋪?

  • 6)熱門品牌月餅價格對比

  • 7)不同口味的月餅品牌推薦(自動)

二、獲取數據

數據來源: 京東搜索關鍵字【月餅】,使用自動采集軟件,采集 2000+的數據, 包含月餅標題、店鋪名、品牌、價格、銷量、類別、產地

#?導入相關庫,讀取數據 import?pandas?as?pd import?matplotlib.pyplot?as?plt import?matplotlib?as?mpl import?seaborn?as?sns import?numpy?as?np sns.set(font='SimHei',style='darkgrid')data?=?pd.read_excel('C:/Users/Cherich/Desktop/月餅數據.xlsx') data.info()

店鋪名、品牌、月餅類別、產地都有缺失值。前兩個缺失值較少,可直接刪除空值;月餅類別很重要,所以要考慮填充;最后產地,可以基于現有的產地直接分析,對最后的結果,不會有太大影響。

三、數據清洗

1、填充類別

填充的方式通常有兩種:一種基于機器學習的相關算法做預測;第二種找規律,比如在大多數標題里包含了月餅類別,所以采取字符串判斷,就可以填充了。

data.head()

categorys?=?data.groupby('category') category_list?=?[i[0][:2]?for?i?in?categorys] category_list[-5]?=?'卡券' print(category_list) #?['京式',?'其它',?'冰淇',?'冰淇',?'冰皮',?'卡券',?'臺式',?'卡券',?'港式',?'滇式',?'潮式',?'蘇式'] datas?=?data[data['category'].isnull()==True]def?add_category(df):name?=?'其它'for?j?in?category_list:if?j?in?str(df):name?=?str(j)???return?name datas['category']?=?datas['title'].apply(add_category) datas1?=?data[data['category'].isnull()==False] datas2?=?pd.concat([datas1,datas]) datas2

2、填充口味

口味同樣也出現在標題里,和上面同樣的方法,進行填充。因為口味沒有單獨的字段,所以要填充口味關鍵詞,不得不說,月餅口味還真是多!

tastes?=?["冰皮","冰淇","蛋黃蓮蓉","豆沙","黑芝麻","火腿","椒鹽","榴蓮","玫瑰","流心","奶酪","牛肉","水果","酥皮","五仁","椰蓉","棗蓉","桃仁"]def?add_taste(df):name?=''for?j?in?tastes:if?j?in?str(df):name?=?str(j)?breakelse:name?=?'混合口味'return?name datas2['taste']?=?datas2['title'].apply(add_taste) datas2.head()

3、刪除店鋪名為空的數據

datas2.dropna(subset=['shop'],inplace=True) datas2.info()

4、標記價格區間

def?price(df):lable?=?''if?0<df<=50:lable=?'0~50元'elif?50<df<=100:lable?='50~100元'elif?100?<?df?<=150:lable?=?'100~150元'elif?150?<df?<=?200:lable?=?'150~200元'else:lable?=?'200元以上'return?labledatas2['price_lable']?=?datas2['price'].apply(price) datas2.head()

四、數據可視化

1、月餅的價格區間情況

las?=?datas2.groupby(datas2['price_lable']).size() las.sort_values(ascending=True,inplace=True) plt.figure(figsize=(8,6),dpi=80) plt.title(label='月餅價格區間分布',fontsize=20) size?=?0.3 patches,?l_text,?p_text?=?plt.pie(las.values,labels?=?las.index,?shadow=True,colors=plt.cm.coolwarm_r(np.linspace(0,1,len(las.index))),wedgeprops=dict(width=size,?edgecolor='w'),autopct='%.2f%%',startangle=300) plt.show()

其中31%的月餅在50元以下,看來大多數的月餅還是比較實惠的;居然有24%的月餅在200元以上,月餅這么貴了嘛?

2、月餅種類的銷量對比

big_category?=?datas2[datas2['category']!='其它'].groupby(datas2['category']) category?=?[i?for?i,j?in?big_category] numbers?=?[j['sales'].sum()?for?i,j?in?big_category]plt.figure(figsize?=?(5,4),dpi=80) plt.title(label='不同類別月餅銷量對比',fontsize=18) plt.bar(category,numbers,?color=plt.cm.coolwarm_r(np.linspace(0,1,len(numbers)))) plt.xticks(rotation=45) plt.grid() plt.show()

看來擠進前三名的月餅類別是廣式、蘇式、港式月餅,好奇心驅使,特意查了這些月餅,究竟哪里好吃!

廣式月餅:廣式的皮薄,皮餡比一般在1:4,餡料多以椰絲、蓮蓉、蛋黃、豆沙為主,油多,吃起來口感酥軟。

港式月餅和廣式比較接近,因為地理上就比較接近,但是港式在廣式的基礎上進行了改良,低脂、低油是港式的特點。趕緊給女神安排上!

蘇式月餅江浙滬一帶的特色,最大的特色就是酥皮,外酥內軟,很有層次感,越咀嚼越香。

3、TOP 15 口碑較好的品牌

shop?=?datas2.groupby(datas2['brand']) shop_dic?=?{i:j['sales'].sum()?for?i,j?in?shop} shop_dic?=?sorted(shop_dic.items(),?key?=?lambda?kv:(kv[1],?kv[0]),reverse=True) ins?=?[] val?=?[] for?i,?j?in?shop_dic[:15]:ins.append(i.split()[0])val.append(j) #?print(ins) vals?=?[round(datas2[datas2['brand']==?z]['price'].mean())?for?z?in?ins] #?print(vals) plt.figure(figsize?=?(8,4),dpi=80)plt.title(label='TOP?15?口碑較好的品牌',fontsize=20) s?=?plt.barh(ins[::-1],val[::-1],height=0.9,?color=plt.cm.coolwarm_r(np.linspace(0,1,len(ins)))) i?=?0 plt.grid() plt.show()

北京的稻香村在所有品牌中的銷量位居第一,其次華美、五芳齋、元朗……

4、TOP 10 好吃的月餅口味

shop?=?datas2[datas2['taste']!='混合口味'].groupby(datas2['taste']) shop_dic?=?{i:j['sales'].sum()?for?i,j?in?shop} shop_dic?=?sorted(shop_dic.items(),?key?=?lambda?kv:(kv[1],?kv[0]),reverse=True) ins?=?[] val?=?[] for?i,?j?in?shop_dic[:15]:ins.append(i.split()[0])val.append(j)plt.figure(figsize?=?(8,4),dpi=80) plt.title(label='TOP?15?熱門月餅口味',fontsize=18) plt.bar(ins,val,?color=plt.cm.coolwarm_r(np.linspace(0,1,len(ins)))) plt.xticks(rotation=45) plt.grid() plt.show()

據口味的銷量對比,熱門口味是蓮蓉蛋黃、流心、五仁、豆沙、火腿……

5、TOP 10 月餅銷量最高店鋪

shop?=?datas2.groupby(datas2['shop']) shop_dic?=?{i:j['sales'].sum()?for?i,j?in?shop} shop_dic?=?sorted(shop_dic.items(),?key?=?lambda?kv:(kv[1],?kv[0]),reverse=True) ins?=?[] val?=?[] for?i,?j?in?shop_dic[:10]:ins.append(i.split()[0])val.append(j)plt.figure(figsize?=?(8,4),dpi=80) plt.title(label='TOP?10?銷量最高的店鋪',fontsize=18) plt.barh(ins[::-1],val[::-1],height=0.9,?color=plt.cm.coolwarm_r(np.linspace(0,1,len(ins))))plt.grid()

看來稻香村品牌雖然銷量第一,但是在店鋪銷量上,華美旗艦店位居第一

6、品牌銷量詞云圖

from?wordcloud?import?WordCloud from?PIL?import?Image li?=?[each?for?each?in?datas2['brand'].values]def?func_pd(words):count_result?=?pd.Series(words).value_counts()return?count_result.to_dict()frequencies?=?func_pd(li) plt.figure(figsize?=?(10,8),dpi=80) wordcloud?=?WordCloud(font_path="STSONG.TTF",background_color='#E6E6FA',?width=700,height=350).fit_words(frequencies) plt.imshow(wordcloud) plt.axis("off") plt.show()

7、熱門品牌月餅價格對比

brand?=?['華美',?'稻香村',?'五芳齋',?'美心',?'杏花樓',?'廣州酒家',?'元朗榮華',?'金尊',?'元朗',?'哈根達斯',?'潘祥記',?'YOTIME',?'金九',?'中大惠農',?'功德林'] datas?=?datas2[datas2['brand'].isin(brand)]groups?=?datas2['price'].groupby(datas2['brand'])plt.figure(figsize?=?(8,4),dpi=80) plt.title('熱門品牌價格對比',fontsize=18)box_1,?box_2,?box_3,?box_4,box_5,?box_6?=?groups.get_group('華美'),groups.get_group('稻香村'),groups.get_group('廣州酒家'),groups.get_group('YOTIME'),groups.get_group('金九'),groups.get_group('五芳齋')labels?=?'華美',?'稻香村',?'廣州酒家',?'YOTIME',?'金九',?'五芳齋'bplot?=?plt.boxplot([box_1,?box_2,?box_3,?box_4,box_5,box_6],patch_artist?=?True,showmeans=True,labels=labels) colors=?plt.cm.coolwarm_r(np.linspace(0,1,len(labels)))for?patch,?color?in?zip(bplot['boxes'],?colors):patch.set_facecolor(color) plt.grid(False)??????????? plt.show()

選了幾個熱門品牌,能看出在價格上:

每個品牌都存在一定的較高異常值,屬于對購買能力較高的用戶,定制禮盒;

均價最低的是華美和稻香村、五芳齋,看來銷量高一部分因素是因為價格。

8、不同口味的月餅品牌推薦(自動)

想實現通過選擇自己喜歡的口味,自動推薦銷量較好的品牌。選用Boken做聯動,bokeh 是一個交互式的可視化庫,為瀏覽器而生。它可以快速的做出可交互的圖、儀表板以及數據應用。

import?pandas?as?pdfrom?bokeh.models.widgets?import?Panel from?bokeh.models.widgets?import?Tabs import?warnings warnings.filterwarnings('ignore') from?bokeh.io?import?curdoc from?bokeh.plotting?import?figure from?bokeh.models?import?ColumnDataSource,?Select from?bokeh.layouts?import?row import?matplotlib?as?mplmpl.rcParams['font.family']?=?'SimHei' data?=?pd.read_excel('C:/Users/cherich/Desktop/月餅數據.xlsx')brand?=?['華美',?'稻香村',?'五芳齋',?'美心',?'杏花樓',?'廣州酒家利口福',?'元朗榮華',?'金尊',?'元朗',?'哈根達斯',?'潘祥記',?'YOTIME',?'金九',?'中大惠農',?'功德林'] data?=?data[data['brand'].isin(brand)]#?------------------------------------------------------------------ #?創建下拉小部件:?select types?=?list(data['taste'].unique()) select1?=?Select(options=types,?value='蓮蓉') data_qudao?=?data[data.taste?==?'蓮蓉'] data_qudao_a?=?data_qudao.groupby('brand').size().sort_values(ascending=False).head(15) print(data_qudao_a) data_qudao_b?=?pd.DataFrame(data=data_qudao_a,?columns=['num']) data_qudao_b['ind']?=?data_qudao_b.index #?創建數據源:?source source1?=?ColumnDataSource(data={'x':?data_qudao_b['ind'],'y':?data_qudao_b['num'] }) TOOLTIPS?=?[("口味",?"@x"),("銷量",?"?@y") ] p1?=?figure(title='月餅口味店鋪推薦',?x_range=data_qudao_a.index.to_list(),?plot_width=620,?plot_height=500,x_axis_label='品牌',?y_axis_label='銷量',?tooltips=TOOLTIPS)p1.vbar('x',?width=0.5,?bottom=0,?top='y',?source=source1,?color='#BCD2EE')def?update_plot1(attr,?old,?new):yr?=?select1.valuedata_qudao?=?data[data.taste?==?yr]data_qudao_a?=?data_qudao.groupby('brand').size().sort_values(ascending=False).head(15)data_qudao_b?=?pd.DataFrame(data=data_qudao_a,?columns=['num'])data_qudao_b['ind']?=?data_qudao_b.indexsource1.data?=?{'x':?data_qudao_b['ind'],'y':?data_qudao_b['num']}p1.title.text?=?'%s類型統計圖'?%?yrselect1.on_change('value',?update_plot1) layout2?=?row(select1,?p1)tab1?=?Panel(child=layout2,?title='口味') layout?=?Tabs(tabs=[tab1]) curdoc().add_root(layout)

啟動bokeh服務:

bokeh?serve?--show?aa.py

選擇喜歡的口味,圖表自動展示銷量最高的品牌。一個簡單的分析動態圖!

五、結論

1、大部分月餅的價格在50元以下,還是非常實惠的;

2、廣式月餅最受歡迎,其次是港式月餅,蘇式月餅;

3、口碑較好的品牌是:華美、稻香村、五芳齋、美心;

4、熱門口味是:蛋黃蓮蓉、流心、五仁、豆沙、火腿、冰皮;

往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習及深度學習筆記等資料打印機器學習在線手冊深度學習筆記專輯《統計學習方法》的代碼復現專輯 AI基礎下載機器學習的數學基礎專輯黃海廣老師《機器學習課程》視頻課

本站qq群851320808,加入微信群請掃碼:

總結

以上是生活随笔為你收集整理的【Python】利用 Python 分析了一波月饼,我得出的结论是?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。