視覺化 Walmart 財報- 01 (安裝環境、檔案基本介紹)

更新於 發佈於 閱讀時間約 7 分鐘
本篇筆記著重在將損益表變數套進Sankey Chart三大結構/四大元素(因為前面的抓取資料還沒搞懂,暫時無法分享(>人<;),會分享

Threads上大神分享的練習題,不能只看還要操作。本系列學習筆記會實作大神分享的程式碼,加上自己的註解跟邏輯。

https://www.threads.net/@dn.ape/post/DDbPst7pAId?xmt=AQGzB518N9F6BXd0SA2DruCtASNpfCZ0wp9S1TGd5CiRrQ

留言處原作者提供程式原始碼下載

本次練習的步驟與目標 (數遊原人DigNo Ape 提供)

  1. 獲取 WMT 財報Excel連結 ➡ Nasdag 獲取數據財報 (但因我爬蟲失敗嗚嗚,所以先用大神的檔案練習後面Pandas的部分)
  2. 匯入 Excel (urllib) 並轉換成 Pandas dataframe ➡Google Colab Python Notebook (這部分我也卡住,應該是CSV 檔找不到的問題)
  3. 定位財報細項、營收細項等。➡OpenPy XL (作者有提供 Excel)
  4. 將損益表變數套進Sankey Chart三大結構/四大元素 。本筆記只能從這裡開始。
  5. 目標做出 Sankey Chart (如下圖)
raw-image



作者提供的程式碼檔案

作者提供的程式碼檔案

分析師結論:FY25Q4 財報 - 本季營收達到$180.55B,YOY增長 4.1%,略高於市場預期 。 - EPS為$0.66 ,略高於預期。 - 電子商務增長 16%,美國的線上銷售額增長 20%,全球電子商務目前佔銷售額的 18% - 全球廣告業務增長 27%,$4.4B - 全球會員業務增長 21%,$3.8B - Walmart Marketplace 業務增長 37%,約45% 的訂單由 WFS 配送 - Capex $23.8B,用於店鋪改造、新店擴編和供應鏈自動化


每個檔案所代表的意義(照順序執行)

  • 13F Berkshire Hathaway sent.ipynb,它爬取網頁波克夏的持股資訊,不依賴其他 Notebook。在這個檔案中,用Pandas DataFrame (df_data),轉換資料並進行處理。
    • 我試過網站打不開,程式可能無法正常運行。
  • duckdb.ipynb → Pandas SQL sent.ipynb
    • 這兩個檔案處理財務資料,duckdb先把 CSV 檔變成df 這個變數,再用Pandas處理。
    • 這兩個檔案的用途我有問 ChatGPT 😣
  • 直接執行 WMT_Sankey_Chart_Sent.ipynb,因為它處理 Excel,不依賴其他 Notebook。主要透過 OpenPyXL 解析財報 (Excel),並繪製 Sankey Diagram。正常來說,應該將前面三個檔案都處理過,才有辦法產生 Excel財務報告,但是原作者將 OpenPyXL 解析財報 (Excel) 做成連結,所以跳過前兩的資料分析步驟也可以繪製圖表。
  • 為什麼我會知道?因為我一執行 WMT_Sankey_Chart_Sent.ipynb 就可以畫圖,剛好碰巧可以產生圖表。

ipynb 檔案介紹

ipynbJupyter Notebook)是一種 互動式 Python 環境,常用在Google Colab 的環境,檔案會包含

  • 程式碼單元格(Code Cells):可以執行 Python、SQL、Markdown 等語言,每個區塊可以獨立執行。
  • 文字單元格(Markdown Cells):用來寫筆記或說明(可以顯示粗體、標題)
    • 筆記 + 說明 ➝ 用 Markdown Cell
    • Python 註解 ➝ 用 #
    • SQL 註解 ➝ 用 --/* ... */
  • 執行輸出(Outputs):顯示圖表、數據表、錯誤訊息等
  • 元數據(Metadata):包含 Notebook 設定資訊

如果要用 VS code 需要安裝 Jupyter Extension


準備環境

Google Colab Python Notebook 是比較適合的環境,因為可以在網頁上使用,許多套件也已經安裝好了。我選擇用 VS code (可先到官網下載) 呈現,目的是帶著大家一起學會安裝環境。

小技巧:開啟行數顯示,VS Code tips — Enable line numbers in Jupyter notebooks

一開始就跟我說 MissingModuleSource

raw-image

如何安裝:pip

的錯誤訊息顯示 bs4 (BeautifulSoup) 無法被解析,通常是因為函式庫未安裝或環境未正確設定。以下是解決步驟:

確認 bs4 是否已安裝

在 VS Code 終端機 (Terminal) 中執行:

pip show bs4

如果沒有安裝,則執行:

pip install beautifulsoup4


python -m pip install beautifulsoup4

raw-image

還有很多套件沒有被安裝,有沒有比較快的方法呢?

在 VS Code 的終端機執行:

python -m pip list

看看這些套件是否已經安裝:

  • beautifulsoup4

簡稱 bs4

    • 如果財報數據是 HTML 表格XML 格式,bs4 可以用來擷取數據。
  • requests
    • 網頁爬蟲的工具,Python 最常用的 HTTP 請求庫
    • 發送 GET 請求到財報數據網站 (如 SEC、Yahoo Finance)。
  • pandas
    • 讀取 JSON、CSV、Excel 或從 requests 爬取的數據。
    • 清理數據,例如刪除空值、重新命名欄位、計算財務指標 (ROE, EPS...)。
    • 轉換數據格式,讓它適合 Sankey Chart
  • numpy
    • 數值計算,財報中可能涉及 比率計算 (毛利率、淨利率、EBITDA)。
    • 進行 數學運算 (例如標準差、回歸分析) 來評估財務狀況。
    • numpy 提供更快的數據處理,比 pandas 更高效。
我自己的版本(需要等個5秒才會跑出來)

我自己的版本(需要等個5秒才會跑出來)


如果 python -m pip list 沒有列出這些套件,表示你的 Python 環境可能不對,請嘗試:

  1. 在 VS Code 左下角的 Python 版本 (狀態列) 點擊,選擇正確的 Python 環境。
  2. 在終端機中執行:
    python -m pip install beautifulsoup4 requests pandas numpy

2. 確保所有需要的套件都已安裝

如果有缺少的套件,可以手動安裝:(可以用空格一鍵安裝)

pip install beautifulsoup4 requests pandas numpy

結論:這些套件的功能

pandas 來整理這些數據,可能透過 requests + bs4 來爬取財報數據,再透過 numpy 進行數據轉換,最後用 plotlymatplotlib 畫出 Sankey Chart

但如果你的數據已經在 Excel / CSV,其實 requests & bs4 不一定要用,但如果你要從網頁爬取財報數據,那這些工具會很有幫助!


了解 WMT_Sankey_Chart_Sent.ipynb

請見下回分解








雙重身份:越南放大鏡 X 下班資工系 政大東南亞語言學系是我接觸越南語的起點,畢業後找越南外派工作的生活跟資訊時,發現幾乎都是清單式的分享,很難身歷其境。所以我希望「越南放大鏡」可以帶讀者看到更多細節和深入的觀察。 - 下班資工系則是自學資工系的課程內容,記錄實際操作的過程,學習理論的過程。希望可以跟讀者一起成長。
留言
avatar-img
留言分享你的想法!

































































網路上很多分享 HTML, CSS 的資源,但很多超級多內容,一開始在學的時候以為每個指令都要背,實際上只要知道大方向跟邏輯,學會查就好了。本篇文章會記錄學習重點,和免費學習的資源。 HTML、CSS、JavaScript 差在哪裡? 👉 HTML = 骨架 🏗️(負責結構) 負責標記內容
本文介紹深度學習框架TensorFlow和PyTorch,以及CPU、GPU、CUDA如何影響運算效能。TensorFlow適合企業應用和大型模型部署,PyTorch更靈活,適合研究和開發。GPU透過CUDA加速運算,大幅提升訓練速度,尤其在大規模數據和深度神經網路訓練時。
很常聽到深度學習,但到底是在學些什麼?今天來跟我一起學習一個重要的概念: 多層感知機(MLP, Multi-Layer Perceptron)是最基礎的神經網路之一。它雖然簡單,卻是許多進階模型的基礎,例如 CNN(卷積神經網路) 和 Transformer(變換器)(某論文),用於處理自然語言模
這篇文章提供關於Git分支(Branch)和合併(Merge)的進階教學,包含建立分支、在不同分支修改檔案、合併分支以及處理合併衝突等步驟,並輔以圖文說明,適合初學者學習。
這篇文章提供 Git 版本控制系統的完整教學,從基礎概念到進階操作,包含圖文並茂的步驟說明和範例,讓讀者可以快速上手並應用於團隊協作及 GitHub Pages 部署網站。
這篇文章介紹如何使用 Google Colaboratory 進行線性回歸的梯度下降練習,包含手刻梯度下降法和使用 scikit-learn 的方法,並探討學習率、數據標準化、NaN 值等問題與解決方案。另外介紹,Matplotlib 進行結果可視化。
網路上很多分享 HTML, CSS 的資源,但很多超級多內容,一開始在學的時候以為每個指令都要背,實際上只要知道大方向跟邏輯,學會查就好了。本篇文章會記錄學習重點,和免費學習的資源。 HTML、CSS、JavaScript 差在哪裡? 👉 HTML = 骨架 🏗️(負責結構) 負責標記內容
本文介紹深度學習框架TensorFlow和PyTorch,以及CPU、GPU、CUDA如何影響運算效能。TensorFlow適合企業應用和大型模型部署,PyTorch更靈活,適合研究和開發。GPU透過CUDA加速運算,大幅提升訓練速度,尤其在大規模數據和深度神經網路訓練時。
很常聽到深度學習,但到底是在學些什麼?今天來跟我一起學習一個重要的概念: 多層感知機(MLP, Multi-Layer Perceptron)是最基礎的神經網路之一。它雖然簡單,卻是許多進階模型的基礎,例如 CNN(卷積神經網路) 和 Transformer(變換器)(某論文),用於處理自然語言模
這篇文章提供關於Git分支(Branch)和合併(Merge)的進階教學,包含建立分支、在不同分支修改檔案、合併分支以及處理合併衝突等步驟,並輔以圖文說明,適合初學者學習。
這篇文章提供 Git 版本控制系統的完整教學,從基礎概念到進階操作,包含圖文並茂的步驟說明和範例,讓讀者可以快速上手並應用於團隊協作及 GitHub Pages 部署網站。
這篇文章介紹如何使用 Google Colaboratory 進行線性回歸的梯度下降練習,包含手刻梯度下降法和使用 scikit-learn 的方法,並探討學習率、數據標準化、NaN 值等問題與解決方案。另外介紹,Matplotlib 進行結果可視化。
你可能也想看
Google News 追蹤
在此篇中,我們來拿實務的例子作實戰練習,我們會討論如何在Google Colab的環境下,撈取所有台美股的股票代碼,並獲取相關細節,最後將獲取的資訊存取於SQLite資料庫中。
Thumbnail
商業簡報不僅僅是呈現數據,更需要深入瞭解數據分析及有效的工具運用。本文探討於Excel中使用不同函數來改善數據處理效率,包括IF、IFS、VLOOKUP、XLOOKUP及INDEX與MATCH的結合,幫助商業人士更好地從數據中提取洞見,助力業務增值,學習優化數據分析過程,讓您的商業簡報更具影響力。
Thumbnail
Python資料視覺化在數據分析中扮演關鍵角色,透過視覺化捕捉數據模式、趨勢和異常,透過Matplotlib等工具創建專業圖表變相對簡單和高效。
Thumbnail
🎗️本次主題成果展示:人力資訊分析 上集回顧 🔗EXCEL儀表板 | 人力資訊分析儀表板 #1 | 上手等級:入門🔗 🔗EXCEL儀表板 | 人力資訊分析儀表板 #2 | 上手等級:入門🔗 🔗EXCEL儀表板 | 人力資訊分析儀表板 #3 | 上手等級:入門🔗 🔗E
Thumbnail
🎗️本次主題成果展示:人力資訊分析 上集回顧 🔗EXCEL儀表板 | 人力資訊分析儀表板 #1 | 上手等級:入門🔗 🔗EXCEL儀表板 | 人力資訊分析儀表板 #2 | 上手等級:入門🔗 🔗EXCEL儀表板 | 人力資訊分析儀表板 #3 | 上手等級:入門🔗
Thumbnail
🎗️本次主題成果展示:人力資訊分析 上集回顧 🔗EXCEL儀表板 | 人力資訊分析儀表板 #1 | 上手等級:入門🔗 🔗EXCEL儀表板 | 人力資訊分析儀表板 #2 | 上手等級:入門🔗 ♐人力資訊儀表板分集 本次人力資訊儀錶板預計分成5集依循漸進逐步完成 資料整
Thumbnail
🎗️本次主題成果展示:人力資訊分析 上集回顧 🔗EXCEL儀表板 | 人力資訊分析儀表板 #1 | 上手等級:入門🔗 ♐人力資訊儀表板分集 本次人力資訊儀錶板預計分成5集依循漸進逐步完成 資料整理與人力資訊取得 區域樞紐分析+環圈圖 (本集教學) 性別樞紐分析+圖像
Thumbnail
【特殊圖表教學目錄傳送門 : EXCEL特殊圖表大合輯 | 持續更新中】 簡報或報告永遠都是看到圓餅圖、環圈圖,枯燥又沒創意,那麼就稍微改變一下,把百分比用儀表盤的方式顯示吧 訂閱贊助效率職人沙龍,解鎖所有特殊圖表教學 <訂閱沙龍BONUS> 贊助訂閱: 99元/月 o
Thumbnail
本文介紹了如何使用資料樞紐分析的功能來整理所需的資料,並設定圖表的中文字型,最後提供了繪圖的程式碼範例。
Thumbnail
設計完一覽表之後,如果會寫程式的人可以每天用這種方法去抓資料放到Excel. 那不會寫程式的人呢? 這裡教你一個稍微要花點時間的輸出Excel的方法。 在上禮拜完成的自選裡。   一、  你先依下圖,在“功能”中找到”輸出到Excel”,按下報價精靈 二、  選擇全部加入,按下全部加
在此篇中,我們來拿實務的例子作實戰練習,我們會討論如何在Google Colab的環境下,撈取所有台美股的股票代碼,並獲取相關細節,最後將獲取的資訊存取於SQLite資料庫中。
Thumbnail
商業簡報不僅僅是呈現數據,更需要深入瞭解數據分析及有效的工具運用。本文探討於Excel中使用不同函數來改善數據處理效率,包括IF、IFS、VLOOKUP、XLOOKUP及INDEX與MATCH的結合,幫助商業人士更好地從數據中提取洞見,助力業務增值,學習優化數據分析過程,讓您的商業簡報更具影響力。
Thumbnail
Python資料視覺化在數據分析中扮演關鍵角色,透過視覺化捕捉數據模式、趨勢和異常,透過Matplotlib等工具創建專業圖表變相對簡單和高效。
Thumbnail
🎗️本次主題成果展示:人力資訊分析 上集回顧 🔗EXCEL儀表板 | 人力資訊分析儀表板 #1 | 上手等級:入門🔗 🔗EXCEL儀表板 | 人力資訊分析儀表板 #2 | 上手等級:入門🔗 🔗EXCEL儀表板 | 人力資訊分析儀表板 #3 | 上手等級:入門🔗 🔗E
Thumbnail
🎗️本次主題成果展示:人力資訊分析 上集回顧 🔗EXCEL儀表板 | 人力資訊分析儀表板 #1 | 上手等級:入門🔗 🔗EXCEL儀表板 | 人力資訊分析儀表板 #2 | 上手等級:入門🔗 🔗EXCEL儀表板 | 人力資訊分析儀表板 #3 | 上手等級:入門🔗
Thumbnail
🎗️本次主題成果展示:人力資訊分析 上集回顧 🔗EXCEL儀表板 | 人力資訊分析儀表板 #1 | 上手等級:入門🔗 🔗EXCEL儀表板 | 人力資訊分析儀表板 #2 | 上手等級:入門🔗 ♐人力資訊儀表板分集 本次人力資訊儀錶板預計分成5集依循漸進逐步完成 資料整
Thumbnail
🎗️本次主題成果展示:人力資訊分析 上集回顧 🔗EXCEL儀表板 | 人力資訊分析儀表板 #1 | 上手等級:入門🔗 ♐人力資訊儀表板分集 本次人力資訊儀錶板預計分成5集依循漸進逐步完成 資料整理與人力資訊取得 區域樞紐分析+環圈圖 (本集教學) 性別樞紐分析+圖像
Thumbnail
【特殊圖表教學目錄傳送門 : EXCEL特殊圖表大合輯 | 持續更新中】 簡報或報告永遠都是看到圓餅圖、環圈圖,枯燥又沒創意,那麼就稍微改變一下,把百分比用儀表盤的方式顯示吧 訂閱贊助效率職人沙龍,解鎖所有特殊圖表教學 <訂閱沙龍BONUS> 贊助訂閱: 99元/月 o
Thumbnail
本文介紹了如何使用資料樞紐分析的功能來整理所需的資料,並設定圖表的中文字型,最後提供了繪圖的程式碼範例。
Thumbnail
設計完一覽表之後,如果會寫程式的人可以每天用這種方法去抓資料放到Excel. 那不會寫程式的人呢? 這裡教你一個稍微要花點時間的輸出Excel的方法。 在上禮拜完成的自選裡。   一、  你先依下圖,在“功能”中找到”輸出到Excel”,按下報價精靈 二、  選擇全部加入,按下全部加