」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何使用 Pandas 解析 CSV 檔案中的自訂日期格式?

如何使用 Pandas 解析 CSV 檔案中的自訂日期格式?

發佈於2024-11-03
瀏覽:364

How to Parse Custom Date Formats in CSV Files Using Pandas?

Pandas 自動執行CSV 檔案中的日期解析

Pandas 具有自動推斷資料類型(包括日期)的功能,簡化了從CSV 檔案中檢索資料的過程。但是,它有時無法識別特定的日期格式,例如顯示為“2013-6-4”的日期格式。

解決方案:指定 'parse_dates' 參數

要克服此挑戰,請利用'parse_dates' 參數。例如,要將「YYYY-MM-DD」格式的日期指定為「datetime」對象,請執行下列命令:

df = pandas.read_csv('test.dat', parse_dates=['datetime'], delimiter=r"\s ", names=['col1','col2','col3'])
, delimiter=r"\s ", name=['col1','col2','col3'])

這會將相關列轉換為'datetime' 物件。

進階自訂:日期解析器函數

對於更複雜的日期格式,請使用日期解析器函數。這些在指定自訂解析邏輯方面提供了更大的靈活性。例如,考慮格式為「YYYY-MM-DD HH:MM:SS」的「日期時間」欄位:
from datetime import datetime
dateparse = lambda x: datetime.strptime(x, '%Y-%m-%d %H:%M:%S')
df = pd.read_csv(infile, parse_dates=['datetime'], date_parser=dateparse)
from datetime import datetime dateparse = lambda x: datetime.strptime(x, '%Y-%m-%d %H:%M:%S') df = pd.read_csv(infile, parse_dates=['datetime'], date_parser=dateparse)

您甚至可以將多個與日期相關的欄位合併到單一「datetime」欄位:
from datetime import datetime
dateparse = lambda x: datetime.strptime(x, '%Y-%m-%d %H:%M:%S')
df = pd.read_csv(infile, parse_dates=['datetime'], date_parser=dateparse)
dateparse = lambda x: datetime.strptime(x, '%Y-%m-%d %H:%M:%S') df = pd.read_csv(infile, parse_dates={'datetime': ['date', 'time']}, date_parser=dateparse)

瀏覽'strptime' 文件以取得表示各種日期時間格式的取得表示各種日期時間格式的取得表示指令。

版本聲明 本文轉載於:1729206855如有侵犯,請洽[email protected]刪除
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3