sql能查到数据 dataset对象里面没有值_新零售数据分析报告
零售項目數據分析報告
一、項目背景
隨著零售市場的競爭日趨激烈,在試圖滿足客戶期望時,最優化服務業務流程的能力是最重要的。通道化和管理數據,以爭取客戶的利益以及創造利潤為目標,對生存至關重要。
理想情況下,零售商的客戶數據反映了公司在吸引和培養客戶方面的成功。零售商使用轉換率,平均訂單價值,購買新近度和最近交易中花費的總金額等指標來構建總結客戶行為的報告。這些度量提供了對客戶行為傾向的總體了解。
本文以MySql(版本5.7)內的項目零售記錄數為對象進行業務分析,將主要分析活躍顧客購物情況,商品銷售情況等,形成以產品——用戶為核心分析目標的零售數據報告。
1.數據來源與表結構
本文采用的數據集來自于和鯨社區(kesci),由sisis通過網絡爬蟲獲取,數據鏈接為https://www.kesci.com/home/dataset/5e0f04a22823a10036b28228。
本數據總共包含三個表,即Customer顧客信息表,prod_cat_info 產品信息表, Transactions交易訂單信息表,分別記錄了顧客的相信信息,產品的詳細分類以及交易訂單的詳情。三張表分別通過customer_id,prod_cat_code,cust_id進行關聯
2.數據分析工具
MySql:主要用于查詢、提取數據庫內數據
Excel:用于數據可視化制作以及部分簡單數據處理
平臺:Navicat Premium 12,主要用作連接MySql
二、數據預處理
1.數據導入
創建數據庫GOODS,將三個表的csv 文件分別導入
導入成功截圖:
2.缺失值清洗
此環節的目的主要是針對表中數據缺失的部分進行處理,有兩種方法,一種是針對缺失值填充數據(均值等可量化的值),一種是直接去除不需要的row。
缺失值查詢:select * from table where column is null
經查詢,三表均沒有空值,即數據表完整,無缺失。
3.格式內容清洗
此部分主要針對各字段的格式進行統一,包括時間,價格等
經查,三表數據格式一致
4.邏輯錯誤清洗
此部分主要針對數據重復、矛盾值內容等進行清洗,篩掉重復的內容,同時,對矛盾值進行處理。
SQL語句:
查重語句:
SELECT
transaction_id,
count( * ) AS count
FROM
transactions
GROUP BY
transaction_id
HAVING
count > 1
查詢截圖:
通過查詢發現,在訂單表中,共有2057條重復訂單號,由于其數據量較少,因此,直接采用excel去重。
同時發現,transaction表中,QTY和RATE字段出現了為負的情況,這在邏輯上是不合理的,因此,我們利用數據分析工具,去除前面的負號。
SQL語句:
update transactions set Qty = -Qty where Qty < 0
update transactions set Rate= - Rate where Rate < 0
update transactions set Total_amt= -Total_amt where Total_amt < 0
同時,由于原表Qty等的類型都為varchar,不適合數據計算,因此將其更換為int類型,這里不做贅述。
運行完成后數據:
5.非需求數據處理
分析transcations和product兩表可知,其中字段prod_subcat_code和pro_sub_cat_code對此次分析意義不太,在備份后進行刪除。
SQL語句:
Alter table transcations drop column pro_sub_cat_code
Alter table transcations drop prod_subcat_cod
經過數據清洗后,得到有效數據為:
Custemor表:5637條
Product表:23條
Transactions表:20878條
三、分析目標
1.用戶畫像分析
分析維度:用戶
分析指標:用戶id,消費金額,用戶所在城市,年齡
擬定相關標準,通過查詢各用戶的性別,地域,年齡等,探究出高消費人群的畫像,并對比男女消費情況,探求其中的差異。
2.商品熱度分析
分析維度:商品
分析指標:產品id,產品銷量,產品銷售總額
通過對各商品的銷售總額進行分析,得出熱銷商品和冷門商品的種類和銷量,從而為零售備貨提供一定指導。
3.銷售平臺分析
分析維度:各平臺銷售額
分析指標:商店種類,銷售數量,銷售額
通過對各銷售平臺(電子商店,旗艦店,遠程商店)等平臺的銷售分析,獲取目前大眾流行的購物方式,從而為零售行業的發展提供借鑒意義。
四、數據分析與可視化
1.用戶畫像分析
1.1提取數據字段
用戶id,來自表格customer,即customer_id,與訂單表transactions的cust_id進行關聯;
消費金額,來自transactions表中的total_amt字段。
用戶所在城市,來自表格customer,即city_code字段。
用戶性別,來自于表格customer,即Gender字段。
1.2 SQL代碼
查出交易訂單中消費金額最多的前500位顧客的id,出生日期,性別,城市:
SELECT
customer.customer_id,
customer.date,
customer.Gender,
customer.city_code,
sum( transactions.Total_amt )
FROM
customer
JOIN transactions ON customer.customer_id = transactions.cust_id
GROUP BY
customer_id
ORDER BY
sum( Total_amt ) DESC
LIMIT 500
運行結果:
查出消費金額前500位顧客的性別分布:
SELECT Gender,count(*) from (
SELECT
customer.customer_id,
customer.date,
customer.Gender,
customer.city_code,
sum( transactions.Total_amt )
FROM
customer
JOIN transactions ON customer.customer_id = transactions.cust_id
GROUP BY
customer_id
ORDER BY
sum( Total_amt ) DESC
LIMIT 500
) as test
GROUP BY Gender
運行結果:
可視化展示:
結合數據和可視化得知,在高消費人群中,男女占比分別為 49.4%和50.6%,幾乎沒有差別。
查出消費金額前500位顧客的地域分布:
SELECT city_code,count(*) from (
SELECT
customer.customer_id,
customer.date,
customer.Gender,
customer.city_code,
sum( transactions.Total_amt )
FROM
customer
JOIN transactions ON customer.customer_id = transactions.cust_id
GROUP BY
customer_id
ORDER BY
sum( Total_amt ) DESC
LIMIT 500
) as test
GROUP BY city_code運行結果:
可視化展示:
從查詢結果和可視化可以看到,在10個城市中,高消費人群分布最多的是8號城市,而分布最少的是6號城市,其他城市相對來說較為平均。
男女平均消費金額對比:
SQL語句:
SELECT
Gender,
avg( transactions.Total_amt )
FROM
customer
JOIN transactions ON customer.customer_id = transactions.cust_id
GROUP BY
customer.Gender
查詢結果:
可視化處理:
可以看出,在所有的交易數據中,男女平均消費金額分別為2621.2537,261。8833,總體看來,人群消費能力大概一致。
不同城市零售消費金額對比:
SQL語句:
SELECT
city_code,
avg( transactions.Total_amt )
FROM
customer
JOIN transactions ON customer.customer_id = transactions.cust_id
GROUP BY
customer.city_code
運行結果:
可視化處理:
可以看出,各城市的平均消費金額差異比較明顯,人均消費能力最強的為10號城市,為2673.7元,而人均消費能力較弱的是6號城市,人均消費金額為2546,2元,這也上文中,消費前500人群城市分布契合。
綜合來看,消費前500的人群中,男女分布較為均衡,同時,在所有訂單中,男女平均消費也比較接近,因此可以認定,高消費人群受性別的影響較小;而從數據來看,人均消費金額和消費前500人群城市分布最多的都是10號城市,而最少的都是6號城市,因此可以粗略認為,10號城市的經濟水平高于6號城市,高消費人群也分布于此,其他城市相對來說差別較小。
2.商品熱度分析
2.1提取數據字段
產品id,來自表product,字段名為prod_cat_id,transaction表中的prod_cat_id相關聯。
產品銷售數量,來自表transaction,字段名為Qty
產品單價,來自表transaction,字段名為Rate
產品銷售額,來自表transaction,字段名為Total_mat
其中,product.Prod_cat_id和transaction.prod_cat_id相關聯。
2.2 SQL代碼
查出各商品銷售數量和銷售額
SELECT
prod_cat_code,
sum(Qty),
sum(Total_amt)
FROM
transactions
GROUP BY
prod_cat_code
運行結果:
可視化處理:
從中可以看出,6種商品種,銷量最好的是5號商品,為16297,而銷量最少的是4號商品,僅為5392.而從銷售額來看,5號商品也是明顯高于其他商品。
3.銷售平臺分析
3.1提取字段
銷售渠道,來自transaction表,字段名為Store_type.
銷售總額,來自transaction表,字段名為Total_mat.
3.2 SQL語句
查詢每種銷售渠道的銷售總額并排序:
SELECT
Store_type,
sum( Total_amt )
FROM
transactions
GROUP BY
Store_type
ORDER BY
sum( Total_amt )
運行結果:
可視化處理:
從中可以看出,e—shop的銷售占比達到了41%,而MBR的銷售僅為20%,可見,電子購物已經代替了部分線下購物需求。
五、項目結論
1.用戶分析
經過多方面分析,發現人群消費能力與性別的關系較小,高消費人群的畫像為女/10號城市,因此,可以在10城市開設一些相對品牌化的零售店,滿足高消費人群其他方面的品質化要求,以高質量、高服務來促進城市零售業的發展與轉型。
2.商品分析。
在6種商品種,銷量最好的為5號商品,而銷量最差的是4號商品,因此,在零售店的進貨結構中,可以通過對商品銷量的進一步預測,結合商品銷售數據,合理完善商品存貨結構,從而減小庫存浪費和積壓貨物的風險。
3.平臺渠道
從數據中看出,e—shop,即電子商店在所有的銷售數量中占了多數,而其他線下的平臺相對來說占比較小,可以看出的是,隨著電子商務的發展,越來越多的人為了減輕購物壓力,會選擇網絡購物,各零售企業要抓住需求,規劃合理的銷售渠道。同時可以看出的是,線下實體店的總占比還是要超過電子商店的,大膽猜測是由于部分用戶為了追求更好的購物體驗感,因此,實際上,實體店并不會消亡,各商家可選擇結合市場趨勢,充分融合線上線下,打通線上線下壁壘,積極開啟新零售之路!
總結
以上是生活随笔為你收集整理的sql能查到数据 dataset对象里面没有值_新零售数据分析报告的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第三方软件源_两款电视盒子软件。涵盖电视
- 下一篇: js解析二维码_最新最全阿里巴巴,今日头