文章目錄
- 🏳??🌈 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 Apriori算法關聯分析
- 3.8 帕累托分析
- 🏳??🌈 4. 可視化項目源碼+數據
大家好,我是 👉 【Python當打之年(點擊跳轉)】
本期我們利用Python分析「超市銷售數據集」,看看:每年銷售額和利潤分布、各地區銷售額和利潤分布、各省訂單量分布、各省銷售額分布、各類別產品訂單量、客戶類別占比等等,希望對大家有所幫助,如有疑問或者需要改進的地方可以聯系小編。
涉及到的庫:
- Pandas— 數據處理
- Pyecharts— 數據可視化
🏳??🌈 1. 導入模塊
import pandas as pd
from pyecharts.charts import *
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 = df.drop_duplicates()
2.4 訂單日期處理提取年份
df['年'] = df['訂單日期'].dt.year
2.5 產品名稱處理
🏳??🌈 3. Pyecharts數據可視化
3.1 每年銷售額和利潤分布
defget_chart1():chart = (Bar().add_xaxis(x_data).add_yaxis('銷售額', y_data1,gap='5%',label_opts=opts.LabelOpts(formatter='{c}萬')).add_yaxis('利潤', y_data2,gap='5%',label_opts=opts.LabelOpts(formatter='{c}萬')).set_global_opts(title_opts=opts.TitleOpts(title='1-每年銷售額和利潤分布',subtitle=subtitle,pos_top='2%',pos_left='center'),legend_opts=opts.LegendOpts(pos_top='15%')))
- 銷售額和利潤均呈現逐年增長的趨勢。
3.2 各地區銷售額和利潤分布
- 華東大區的銷售額最高,反映出當地消費能力較高,中南和東北地區緊隨其后,利潤方面來看,中南地區和華東地區的利潤要遠高于其他地區。
3.3 各省訂單量分布
- 沿海地區的訂單量要明顯高于內地,尤其是廣東、山東、江蘇、遼寧。
3.4 各省銷售額分布
3.5 各類別產品訂單量
- 辦公用品類商品需求量最大,占比超過了50%,技術類和家具類各占20%左右。
3.6 客戶類別占比
- 客戶類別以個體消費者為主,其次是公司和小型企業。
3.7 Apriori算法關聯分析
# 轉換為算法可接受模型(布爾值)
te = TransactionEncoder()
d_data = te.fit(data_am).transform(data_am)
df_t = pd.DataFrame(d_data,columns=te.columns_)
# 設置支持度求頻繁項集
frequent_itemsets = apriori(df_t,min_support=0.04,use_colnames= True)
rules = association_rules(frequent_itemsets,metric = 'confidence',min_threshold = 0.1)
# 設置最小提升度, 一般認為提升度大于1的關聯規則才有商業價值
rules = rules.drop(rules[rules.lift <1].index)
# 設置標題索引并打印結果
rules.rename(columns = {'antecedents':'from','consequents':'to','support':'sup','confidence':'conf'},inplace = True)
rules = rules[['from','to','sup','conf','lift']].sort_values('sup',ascending=False).reset_index(drop=True)
結果:
3.8 帕累托分析
帕累托分析模型(Pareto Analysis),又稱80/20法則、ABC分析法或主次因素分析法,是一種基于“關鍵少數與次要多數”原理的決策工具,用于識別和優先處理對結果影響最大的關鍵因素。
defget_chart8():bar = (Bar().add_xaxis(x_data).add_yaxis("銷售額", y_data1,itemstyle_opts=opts.ItemStyleOpts(color=range_color[-1]),label_opts=opts.LabelOpts(is_show=False),).extend_axis(yaxis=opts.AxisOpts(max_=120,)).set_global_opts(title_opts=opts.TitleOpts(title='8-帕累托分析',subtitle=subtitle,pos_top='2%',pos_left='center',),xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=60,font_size=10)),legend_opts=opts.LegendOpts(pos_top='12%')))line = (Line().add_xaxis(x_data).add_yaxis("累積利潤占比",y_data2,z=10,yaxis_index=1,label_opts=opts.LabelOpts(is_show=False),))
🏳??🌈 4. 可視化項目源碼+數據
點擊跳轉:【全部可視化項目源碼+數據】
以上就是本期為大家整理的全部內容了,趕快練習起來吧,原創不易,喜歡的朋友可以點贊、收藏也可以分享(注明出處)讓更多人知道。