文章

AI 第4天:數據分析與處理基礎

課程簡介

數據是人工智慧的核心,本節課程將介紹數據分析與處理的基礎概念,幫助學員掌握如何清洗、整理與操作數據,為後續的機器學習與深度學習奠定基礎。


教學內容

  1. 數據分析與處理的重要性
    • 數據的質量直接影響模型性能。
    • 常見數據問題:遺漏值、異常值、格式不統一等。
    • 數據處理的主要步驟:
      1. 數據探索(Data Exploration)。
      2. 數據清洗(Data Cleaning)。
      3. 數據轉換與特徵工程。
  2. 基礎工具介紹:Pandas 與 NumPy
    • Pandas:用於結構化數據處理的高效工具。
      • 資料框(DataFrame)與序列(Series)的操作。
      • 基本方法:讀取數據(read_csv)、數據篩選(lociloc)、數據聚合(groupby)。
    • NumPy:專注於數值運算與矩陣操作。
      • N 維陣列(ndarray)的基本操作。
      • 常用函數:meansumreshape
  3. 數據清洗與處理
    • 處理遺漏值
      • 使用平均值、中位數或眾數填補缺失值。
      • 刪除含有大量遺漏值的行或列。
      • 範例:
        1
        
        df['column'].fillna(df['column'].mean(), inplace=True)
        
    • 處理異常值
      • 使用盒鬚圖(Box Plot)檢測異常值。
      • 刪除或替換異常值。
    • 數據標準化與正規化
      • 標準化(Standardization):
        將數據轉換為均值為 0、標準差為 1 的標準正態分佈。
      • 正規化(Normalization):
        將數據縮放至 [0, 1] 區間。
  4. 實作範例:處理一組銷售數據
    • 目標:讀取 CSV 檔案,清洗數據並生成基本統計資訊。
    • 範例程式
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      
      import pandas as pd
      
      # 讀取數據
      df = pd.read_csv('sales_data.csv')
      
      # 查看遺漏值
      print("遺漏值檢查:")
      print(df.isnull().sum())
      
      # 填補遺漏值
      df['Sales'].fillna(df['Sales'].mean(), inplace=True)
      
      # 基本統計分析
      print("基本統計資訊:")
      print(df.describe())
      

教學重點

  • 理解數據清洗的重要性與常用技術。
  • 掌握 Pandas 和 NumPy 的基本操作。
  • 實作簡單的數據清洗與處理案例,為後續模型訓練做好準備。

課後練習

  1. 實作練習
    • 嘗試下載公開數據集(如 Kaggle 或 UCI Machine Learning Repository),使用 Pandas 對數據進行清洗和處理。
    • 繪製盒鬚圖,檢查數據的異常值並進行處理。
  2. 推薦閱讀
    • 《Python for Data Analysis》作者:Wes McKinney(Pandas 創始人)。
    • 線上資源:Pandas 官方文件

sales_data.csv 範例檔案

Date,Product,Category,Sales,Quantity
2023-01-01,Product A,Electronics,200.5,3
2023-01-02,Product B,Furniture,350.0,5
2023-01-03,Product C,Electronics,,2
2023-01-04,Product D,Clothing,120.0,10
2023-01-05,Product E,Clothing,80.0,
2023-01-06,Product F,Electronics,400.0,1
2023-01-07,Product G,Furniture,NaN,4
2023-01-08,Product H,Clothing,150.0,6
2023-01-09,Product I,Electronics,300.0,3
2023-01-10,Product J,Furniture,500.0,2
本文章以 CC BY 4.0 授權