如何在Google Colab環境裡使用Jupyter magic command (ipython-sql),搭配DuckDB ,直接在 Colab Notebook 中
- 讀取csv 檔案
- 建立DuckDB 臨時資料庫 (存在記憶體)
- 執行 SQL 程式碼 進行分析
- 轉換成 Pandas DataFrame
DuckDB 是什麼?
DuckDB 是一款輕量級、serverless、高性能的分析型數據庫,其向量化執行引擎(vectorized query processing)、內嵌式架構(embedded configuration),使其成為數據科學家和分析師的得力工具。
- 本機數據分析: 無需額外的服務器設置,適合在邊緣設備(edge devices)上進行數據分析,尤其是隱私敏感的數據
- 數據預處理與特徵工程:能快速處理 CSV、Parquet 等格式的數據,並支持複雜的 SQL 操作,適合用於機器學習的數據準備階段
- 中小規模數據集分析:能高效處理數百 GB 級別的數據,適合於不需要分佈式計算的分析工作負載
- ANSI SQL:支持 ANSI 標準 SQL,並提供一些擴展功能(如 PIVOT 和 UNPIVOT 操作),方便用戶進行複雜的數據分析
步驟細節
- 於 colab 左側檔案區上傳csv檔案,並按右鍵獲取檔案位置。
- 下載相關函式庫並執行魔術指令,包含加載 SQL extension ( 若已加載可以使用 %reload_ext sql 指令重新加載)、設定後端為 DuckDB。:memory 意謂資料庫僅存在於記憶體中,當程式結束時,所有資料會被清除。
- 直接撈取 Superstore.csv 裡的數據 或create 一資料表superstore_test
- 可使用.DataFrame() 將資料轉成Pandas 資料形式
▌下載連結
以下為本 Python 程式碼(持續增加中)下載連結,想拿資料作練習的朋友可以點下單連結,下載連結會寄至您提供的Email喔! 目前資源會以Free Trial 形式免費一周,當然也歡迎您輸入金額小額贊助我們喔!
謝謝您花時間將此篇文章讀完,若覺得對您有幫助可以幫忙按個讚、分享來或是珍藏喔!也歡迎Follow我的Threads/ FB,持續追蹤生產力工具、商業分析、商業英文的實用範例,提升自己的職場力喔!