[英]pandas.to_datetime() how to convert from local timezone to UTC unix timestamp?
[英]Convert UTC timestamp to local timezone issue in pandas
我正在嘗試將Unix UTC時間戳轉換為Pandas中的本地日期格式。 我一直在尋找一些解決方案,但我不太了解如何正確執行此操作。
我有一個帶有多個UTC時間戳列的數據框,所有這些列都需要轉換為本地時區。 假設歐盟/柏林。
首先,我將所有timestamp列轉換為有效的datetime列,並進行了以下調整:
df['date'] = pd.to_datetime(df['date'], unit='s')
這有效並且給我以下結果,例如2019-01-18 15:58:25如果我知道嘗試調整我已經嘗試過兩個日期時間的時區:
df['date'].tz_localize('UTC').tz_convert('Europe/Berlin')
和df['date'].tz_convert('Europe/Berlin')
在這兩種情況下,錯誤均為: TypeError: index is not a valid DatetimeIndex or PeriodIndex
,我不明白為什么。
問題必須是DateTime列不在索引上。 但是,即使當我使用df.set_index('date')
並嘗試了上述選項后,它也不起作用,並且出現了相同的錯誤。
另外,如果可行,則似乎該方法僅允許對索引的DateTime進行時區調整。 然后,我該如何調整其他需要調整的列?
希望找到有關如何一勞永逸地解決這些問題的信息! 謝謝
您應該首先通過添加.dt.
指定它為日期時間.dt.
到非索引
df['date'] = df['date'].dt.tz_localize('UTC').dt.tz_convert('Europe/Berlin')
如果該列不是索引列,則應使用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.