學習如何使用 Python 處理 CSV 檔案 – 2025 最新語法與最佳實踐

學習如何使用Python處理CSV檔案

目錄

使用 Python 處理 CSV 檔案 – 2025 最新語法與最佳實踐

CSV(Comma-Separated Values)是一種文本文件格式,其中的每一行都包含一組以逗號分隔的值。這種格式簡單且廣泛應用於儲存表格數據,如電子表格或數據庫中的資料。Python 提供了標準庫,使得處理 CSV 文件變得非常簡單。本文將介紹如何使用 Python 來讀取、寫入 CSV 文件,以及如何有效地處理 CSV 文件中的數據。

使用 Python 讀取 CSV 文件

要使用 Python 讀取 CSV 文件,首先需要導入 csv 模組。這個模組提供了一組功能,可以輕鬆地讀取和寫入 CSV 文件。

以下是讀取 CSV 文件的示例:

import csv

# 打開文件
with open('data.csv', 'r', newline='') as csv_file:
    # 創建一個 CSV 讀取器
    csv_reader = csv.reader(csv_file)

    # 讀取文件中的數據
    for row in csv_reader:
        print(row)

上述代碼將打開名為 “data.csv” 的文件,並使用 csv.reader() 創建一個 CSV 讀取器,接著用 for 迴圈遍歷讀取的每一行數據並打印。

使用 Python 寫入 CSV 文件

要使用 Python 寫入 CSV 文件,同樣需要使用 open() 函數打開文件,並使用 csv.writer() 創建一個 CSV 寫入器。

以下是寫入 CSV 文件的示例:

import csv

# 打開文件
with open('data.csv', 'w', newline='') as csv_file:
    # 創建一個 CSV 寫入器
    csv_writer = csv.writer(csv_file)

    # 寫入文件中的數據
    csv_writer.writerow(['Name', 'Age'])
    csv_writer.writerow(['John', '20'])
    csv_writer.writerow(['Jane', '21'])

這段代碼將打開名為 “data.csv” 的文件,並使用 csv.writer() 創建一個 CSV 寫入器,然後使用 csv_writer.writerow() 方法將數據寫入文件。

使用 Python 處理 CSV 文件中的數據

除了基本的讀寫操作,我們還可以使用 Python 的第三方庫如 pandas 來更高效地處理 CSV 文件中的數據。

以下是使用 pandas 處理 CSV 文件的示例:

import pandas as pd

# 讀取 CSV 文件
df = pd.read_csv('data.csv')

# 計算平均值
mean = df['Age'].mean()

# 計算中位數
median = df['Age'].median()

# 計算標準差
std = df['Age'].std()

# 打印結果
print('Mean:', mean)
print('Median:', median)
print('Standard Deviation:', std)

這段代碼使用 pandas 的 read_csv() 函數來讀取 “data.csv” 文件,然後計算並打印出 “Age” 列的平均值、中位數和標準差。

錯誤排除

在處理 CSV 文件時,可能會遇到一些常見錯誤,包括文件不存在、格式錯誤或編碼問題。為了避免這些問題,請確保文件路徑正確,並選擇合適的編碼格式。

延伸應用

除了基本的讀寫操作,您還可以將 CSV 文件與其他數據源整合,或使用資料視覺化庫如 Matplotlib 和 Seaborn 對數據進行可視化分析,以獲得更深入的洞見。

常見問題解答(Q&A)

Q1: 如何處理 CSV 文件中的缺失數據?

A1: 您可以使用 pandas 的 fillna() 方法填補缺失數據,或使用 dropna() 方法刪除包含缺失數據的行。

Q2: CSV 文件可以儲存哪些數據類型?

A2: CSV 文件可以儲存文本、數字和日期等多種數據類型,但所有數據都是以文本格式存儲的,需要在讀取時進行轉換。

Q3: 如何將多個 CSV 文件合併為一個?

A3: 使用 pandas 的 concat() 方法可以輕鬆地將多個 CSV 文件合併為一個 DataFrame,然後再寫入新的 CSV 文件。

希望本文能幫助您更輕鬆地使用 Python 處理 CSV 檔案,並促進您的學習與實踐!

發佈留言