我很好奇如何使用 pandas 處理 .csv 檔案中的此類資訊:
2022-08-11 11:50:01 美國/洛杉磯
我的目標是提取日期、小時和分鐘以及時區資訊以供進一步分析。
我嘗試使用以下方法提取日期和時間: df['Date'] = pd.to_datetime(df['datetime']).dt.date
但由于末尾的字串而出錯。除了使用特定索引提取日期和時間之外,還有什么更好更快的方法嗎?非常感謝。
uj5u.com熱心網友回復:
pandas 無法處理具有不同時區的日期時間列。您可以首先將datetime
和拆分為timezone
單獨的列:
df[['datetime', 'timezone']] = df['datetime'].str.rsplit(' ', n=1, expand=True)
df['datetime'] = pd.to_datetime(df['datetime']) # this column now has the datetime64[ns] type
現在您可以執行以下操作:
df['date_only'] = df['datetime'].dt.date
如果您想及時表達所有本地日期/America/Los_Angeles
時間:
df['LA_datetime'] = df.apply(lambda x: x['datetime'].tz_localize(tz=x['timezone']).tz_convert('America/Los_Angeles'), axis = 1)
您可以更改America/Los_Angeles
為您喜歡的時區。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/478148.html
下一篇:在R中將因子轉換為日期時間