Uniqlo 門市各城市通路分佈
Uniqlo 銷售分析:各城市門市在線上通路與線下實體店的顧客數量分佈
Kaggle 鐵達尼號生還預測
Kaggle 鐵達尼號生還預測:特徵工程與模型提交成績 0.78229
EPI 2022 全球環境績效地圖
EPI 2022 世界環境績效評比:全球 180 個國家環境健康得分分佈
King County 房價預測損失曲線
華盛頓州房價預測:Keras 神經網絡架構之訓練損失與驗證損失收斂曲線
寶可夢對戰預測準確率
寶可夢對戰歷史預測:深度神經網絡訓練與驗證準確率變化
Uniqlo 顧客樣貌分佈
顧客年齡與性別交叉分佈:核心客群為 20 至 34 歲,女性佔比約 64%
專案說明:本篇整理 2022 至 2023 年間在 GitHub 上維護之 Python 資料分析與機器學習練習紀錄。內容以一組公開的 Uniqlo 零售門市營運分析為重點,並收錄五組涵蓋競賽預測、深度學習與指標分析的小型實作。所有資料集皆取自公開練習資源,原始碼與 Notebook 均存放於 GitHub 開源專案庫中。

01 · Retail EDA

重點專案:Uniqlo 門市銷售數據分析

本專案使用公開的 Uniqlo 門市週銷售練習資料集(共 22,293 筆銷售紀錄,涵蓋 10 個城市、線上線下雙通路、顧客性別、年齡層、購買時間、9 種商品品類、顧客數、營收、訂單數、銷售數量與單位成本等 12 個欄位)。以商業營運導向出發,逐一拆解 6 個具體的業務問題:

問題 1:週間與週末的銷售情況如何?

資料中工作日(Weekday)總銷售額為 2,093,947 元,週末(Weekend)總銷售額為 1,462,484 元。但工作日共有 5 天、週末僅有 2 天,換算單日平均營收後,週末單日營收(約 73.1 萬元)顯著高於工作日(約 41.9 萬元)。

Uniqlo 週間與週末單日平均營收比較
週間 vs. 週末單日平均營收:週末單日約 73.1 萬元,工作日單日約 41.9 萬元

問題 2:各城市在線上與線下通路的表現如何?

線下實體門市分佈於 10 個城市,其中以深圳(7,372 名顧客、73.3 萬元)與杭州(6,120 名顧客、58.9 萬元)為主力大店;線上通路則在 5 個城市具備獨立銷售紀錄,以武漢(2,864 名顧客、28.1 萬元)與廣州(2,089 名顧客、20.1 萬元)表現最為突出。

Uniqlo 各城市線上與線下顧客分佈
各城市線上與線下顧客分佈:線下以深圳與杭州居冠,線上以武漢與廣州最多

問題 3:哪些產品類別是營收主力?

在 9 個產品類別中,T恤(T-shirt)為全店最大營收來源,累計營收達 1,538,744 元,佔整體營收四成以上;其次為當季新品(590,664 元)與配件類(444,685 元)。

Uniqlo 各產品品類銷售分佈
產品品類分佈:T恤為最大宗商品,當季新品與配件次之

問題 4:哪些產品類別貢獻最高毛利?

以商品銷售金額扣除單位成本總合計算毛利額,T恤同樣貢獻全店最高毛利(635,919 元),其次為配件類(310,647 元)與當季新品(275,722 元)。配件類雖然總營收排名第三,但因成本結構相對輕盈,貢獻了第二高的毛利額。

問題 5:整體顧客樣貌與客群特徵是什麼?

顧客結構以女性為主力,在有性別標記的紀錄中女性佔 64%(14,208 筆),男性佔 36%(7,967 筆)。年齡分佈高度集中在青年與青壯年族群,其中 20–24 歲、25–29 歲與 30–34 歲合計佔整體顧客大宗。

Uniqlo 顧客年齡與性別交叉分佈
顧客樣貌:女性佔比約 64%,年齡集中於 20 至 34 歲區間

問題 6:產品成本與銷售額 / 毛利率的關係?

計算單位成本(unit_cost)與毛利率(margin)之相關係數僅為 0.10275,呈現低度相關,顯示產品定價與毛利結構並非單純依成本比例加成。在細部觀察中,毛衣與裙子品類出現部分負毛利銷售紀錄,推論可能來自換季清倉或促銷折價折扣。

成本與毛利率相關係數熱力圖
單位成本與毛利率相關係數為 0.10275(低度相關)

本子專案原始程式碼可至 GitHub 查看:uniqlo_sales_data(GitHub)。

02 · Selected Cases

精選練習:五組機器學習與數據專案

1. Kaggle 鐵達尼號生還預測(Titanic Survival)

經典二元分類問題。主要針對原始欄位進行特徵工程:從 Name 欄位中以正規表達式提取稱謂(Mr, Mrs, Miss, Master 等)以補足身分特徵;結合同行親屬欄位(SibSp, Parch)計算家庭規模(FamilySize);對票價(Fare)填補缺失值並進行離散分箱。模型階段比較 RandomForest、XGBoost(配合 GridSearchCV 搜尋最佳超參數)與 Support Vector Classifier (SVC)。最終將預測結果上傳至 Kaggle 平台,獲得官方排行榜成績 0.78229。

Kaggle 鐵達尼號官方提交成績 0.78229
Kaggle 官方提交成績:0.78229
艙等與生還人數分佈
艙等(Pclass)與生還狀態分佈:頭等艙生還率明顯高於三等艙

本子專案原始程式碼可至 GitHub 查看:titanic_survival_prediction(GitHub)。

2. Kaggle 腦中風風險預測(Stroke Prediction)

探討性別、年齡、高血壓、心臟病、BMI、平均血糖與吸菸習慣等 11 個生理與生活型態特徵對腦中風機率之影響。競賽資料中中風陽性樣本佔比極低(高度類別不平衡),因此在邏輯迴歸模型中導入 class_weight='balanced' 以加權少數類樣本損失,並進一步訓練 XGBoost 模型評估特徵重要性,最後產生測試集預測提交檔案。

性別與腦中風罹患人數分佈
性別與腦中風罹患人數分佈:陽性樣本比例極低,具顯著類別不平衡特性

本子專案原始程式碼可至 GitHub 查看:Stroke_Prediction_Kaggle_competitions(GitHub)。

3. 華盛頓州金郡房價預測(King County House Sales)

使用美國華盛頓州 King County 共 21,613 筆房屋銷售資料與 21 個特徵(含房間數、衛浴數、坪數、樓層、屋況評級、經緯度等)。首先建立多元線性迴歸作為基準模型,接著訓練隨機森林迴歸模型;此外使用 Keras Sequential 建構了 4 種不同深度的類神經網絡架構,對比不同隱藏層層數、Dropout 比例與 L2 正則化參數在訓練與驗證損失上的收斂狀況。

房價預測神經網絡損失收斂曲線
類神經網絡訓練損失(Loss)與驗證損失(Val Loss)收斂曲線

本子專案原始程式碼可至 GitHub 查看:kc_house_price_predicting(GitHub)。

4. 寶可夢歷史對戰勝負預測(Pokemon Combat)

結合 50,000 筆歷史對戰紀錄與 800 隻寶可夢數值屬性。資料處理階段針對雙屬性(Type 1, Type 2)進行缺失值補齊與 One-Hot Encoding,轉換為數值向量;接著使用 TensorFlow/Keras 建立多層密集類神經網絡(Dense layers、ReLU 活化函數、Sigmoid 輸出層),以二元交叉熵作為損失函數訓練對戰勝負模型;並實作輸入任意兩隻寶可夢數值即可計算各自獲勝機率的自定義測試函式。

寶可夢對戰預測神經網絡準確率曲線
神經網絡模型訓練準確率(Binary Accuracy)變化曲線

本子專案原始程式碼可至 GitHub 查看:pokemon_combat(GitHub)。

5. 2022 世界環境績效指標評比(EPI 2022 Result)

解析耶魯大學與哥倫比亞大學發布之 2022 年世界環境績效指數(Environmental Performance Index),資料涵蓋全球 180 個國家與 159 個環境健康與生態永續指標。分析全球不同地理區域的環境得分落差;針對台灣全球排名第 74 名進行弱項指標下鑽,指出台灣在二氧化硫(SO2 得分 10.3)、一氧化碳(CO 得分 30.3)以及濕地保護(Wetland loss)與農藥管控方面落後於全球前 75 分位,並從產業結構與政策面提出後續深入追蹤之維度假設。

EPI 2022 全球環境績效分數地圖
EPI 2022 全球環境績效分數地圖(評比全球 180 個國家)
台灣 13 項細部指標排名落點
台灣 13 項細部指標在 180 國中的排名落點分析

本子專案原始筆記可至 GitHub 查看:EPI_2022_result(GitHub)。