SQL 解鎖 - SQL in Colab (DuckDB)

DigNo Ape-avatar-img
發佈於SQL 個房間
更新 發佈閱讀 3 分鐘
raw-image

如何在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檔案,並按右鍵獲取檔案位置。
raw-image


  • 下載相關函式庫並執行魔術指令,包含加載 SQL extension ( 若已加載可以使用 %reload_ext sql 指令重新加載)、設定後端為 DuckDB。:memory 意謂資料庫僅存在於記憶體中,當程式結束時,所有資料會被清除。
raw-image


  • 直接撈取 Superstore.csv 裡的數據 或create 一資料表superstore_test
raw-image
raw-image


  • 可使用.DataFrame() 將資料轉成Pandas 資料形式 
raw-image




▌下載連結

以下為本 Python 程式碼(持續增加中)下載連結,想拿資料作練習的朋友可以點下單連結,下載連結會寄至您提供的Email喔! 目前資源會以Free Trial 形式免費一周,當然也歡迎您輸入金額小額贊助我們喔!




謝謝您花時間將此篇文章讀完,若覺得對您有幫助可以幫忙按個讚、分享來或是珍藏喔!也歡迎Follow我的ThreadsFB,持續追蹤生產力工具、商業分析、商業英文的實用範例,提升自己的職場力喔!










留言
avatar-img
留言分享你的想法!
avatar-img
DigNo Ape 數遊原人
59會員
138內容數
我們秉持著從原人進化的精神,不斷追求智慧的累積和工具的運用來提升生產力。我們相信,每一個成員都擁有無限的潛力,透過學習和實踐,不斷成長和進步。
DigNo Ape 數遊原人的其他內容
2025/04/19
在實務分析中,我們常常會把兩份資料合併。但你有沒有遇過這種情況——資料合併完了,但你忘了哪一筆原本是從左邊來的?還是右邊才有?甚至兩邊都有? 這時就可以用 indicator=True 幫你標記每一欄的「出身」。 資料範例:左邊是員工資料、右邊是津貼資料 import pandas as
Thumbnail
2025/04/19
在實務分析中,我們常常會把兩份資料合併。但你有沒有遇過這種情況——資料合併完了,但你忘了哪一筆原本是從左邊來的?還是右邊才有?甚至兩邊都有? 這時就可以用 indicator=True 幫你標記每一欄的「出身」。 資料範例:左邊是員工資料、右邊是津貼資料 import pandas as
Thumbnail
2025/04/17
題目概述 LeetCode 第 1174 題「Immediate Food Delivery II」的目標是計算所有顧客的第一筆訂單中,即時配送(即訂單日期與顧客偏好配送日期相同)的比例,並將結果四捨五入至小數點後兩位。 [問題連結]
Thumbnail
2025/04/17
題目概述 LeetCode 第 1174 題「Immediate Food Delivery II」的目標是計算所有顧客的第一筆訂單中,即時配送(即訂單日期與顧客偏好配送日期相同)的比例,並將結果四捨五入至小數點後兩位。 [問題連結]
Thumbnail
2025/04/03
題目概述 這題想解的是:當我們手上有一份記錄了機器上 process 的開始與結束時間的表格,要怎麼計算「每台機器平均每個 process 花了多少秒」?
Thumbnail
2025/04/03
題目概述 這題想解的是:當我們手上有一份記錄了機器上 process 的開始與結束時間的表格,要怎麼計算「每台機器平均每個 process 花了多少秒」?
Thumbnail
看更多
你可能也想看
Thumbnail
※ 必備開發環境: Node.Js環境。 Npm或yarn套件管理工具。 Docker倉庫套件:可以快速建立MySQL的資料庫。 下載 Docker Desktop:Docker Desktop for Windows。 ※ Docker快速建立MySQL資料庫,使用步驟: 準備Dock
Thumbnail
※ 必備開發環境: Node.Js環境。 Npm或yarn套件管理工具。 Docker倉庫套件:可以快速建立MySQL的資料庫。 下載 Docker Desktop:Docker Desktop for Windows。 ※ Docker快速建立MySQL資料庫,使用步驟: 準備Dock
Thumbnail
教大家如何使用 google colab 讀取雲端硬碟中的資料
Thumbnail
教大家如何使用 google colab 讀取雲端硬碟中的資料
Thumbnail
SQL 基本篇 - CRUD、運算子、內建函式
Thumbnail
SQL 基本篇 - CRUD、運算子、內建函式
Thumbnail
在這一課中,我們將學習如何在Python中使用sqlite3模塊進行基本的資料庫操作。 創建資料庫和表 首先,我們需要創建一個資料庫和一個表。
Thumbnail
在這一課中,我們將學習如何在Python中使用sqlite3模塊進行基本的資料庫操作。 創建資料庫和表 首先,我們需要創建一個資料庫和一個表。
Thumbnail
Google Colab是一個基於雲端的Python開發環境,提供免費的CPU和GPU資源,讓用戶可以在網頁瀏覽器中運行和編寫Python程式。它具有強大的協作功能,可以與他人共享和編輯程式碼。Google Colab支援Jupyter筆記本,並提供預裝的Python套件,方便進行數據分析、機器學習
Thumbnail
Google Colab是一個基於雲端的Python開發環境,提供免費的CPU和GPU資源,讓用戶可以在網頁瀏覽器中運行和編寫Python程式。它具有強大的協作功能,可以與他人共享和編輯程式碼。Google Colab支援Jupyter筆記本,並提供預裝的Python套件,方便進行數據分析、機器學習
Thumbnail
在Visual Studio裡有內建的SQL幫助我們存資料,SQL指的是資料庫,那麼我們就用註冊會員這個例子來看一下怎麼使用內建的SQL吧~ 最後面有寫非常基本的SQL相關語法可以做參考 Step 1:建立資料庫
Thumbnail
在Visual Studio裡有內建的SQL幫助我們存資料,SQL指的是資料庫,那麼我們就用註冊會員這個例子來看一下怎麼使用內建的SQL吧~ 最後面有寫非常基本的SQL相關語法可以做參考 Step 1:建立資料庫
Thumbnail
在supabase裡可以直接從客戶端讀取資料庫中的資料,在設定好RLS的前提之下,更可以對資料庫直接進行新增、修改、刪除等操作。 先進到後台選擇SQL Editor,可以來到SQL編輯器的頁面,如果是本身會寫資料庫相關的SQL內容可以直接點擊上方的New query按鈕,可以開啟一個空白頁面開始編輯
Thumbnail
在supabase裡可以直接從客戶端讀取資料庫中的資料,在設定好RLS的前提之下,更可以對資料庫直接進行新增、修改、刪除等操作。 先進到後台選擇SQL Editor,可以來到SQL編輯器的頁面,如果是本身會寫資料庫相關的SQL內容可以直接點擊上方的New query按鈕,可以開啟一個空白頁面開始編輯
Thumbnail
上一篇我們已經介紹過Google Colab的基本用法,建議可以先行閱讀「【Google Colab系列】台股分析預備式: Colab平台與Python如何擦出火花?」,進行基本概念與環境的建置再進行下一步會比較容易進行學習。 雖然網路上已經提供非常多的股市資訊,但各個網站可能都零零散散,難免我們得
Thumbnail
上一篇我們已經介紹過Google Colab的基本用法,建議可以先行閱讀「【Google Colab系列】台股分析預備式: Colab平台與Python如何擦出火花?」,進行基本概念與環境的建置再進行下一步會比較容易進行學習。 雖然網路上已經提供非常多的股市資訊,但各個網站可能都零零散散,難免我們得
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News