【发布时间】:2022-01-10 06:22:16
【问题描述】:
我正在尝试将 .csv 文件解析为数据框。 csv 有多个时区,因为在数据记录期间发生了夏令时(在 +01:00 其他时区在 +02:00)。这是一个用于理解的sn-p:
读入 csv 文件后,我的代码设置如下:
df_vitals.Date_time = pd.to_datetime(df_vitals.Date_time, format ='%Y-%m-%d %H:%M:%S%z')
df_vitals.Date_time = df_vitals.Date_time.dt.tz_convert("Europe/Madrid")
Date_time 是我的包含混合时区的列。我收到以下错误:
AttributeError: Can only use .dt accessor with datetimelike values
请注意,这对于我只有一个时区(即没有夏令时)的 csv 文件非常有效
如何正确解析包含多个时区的 csv 文件?
【问题讨论】:
-
您的输入有多个 UTC 偏移量(准确地说,不是时区)。但是,熊猫日期时间类型的熊猫系列只能处理一个 UTC 偏移量或一个特定时区。这就是为什么 pd.to_datetime 在这里返回一个 pd.Series 的 Python 日期时间对象(不是 pandas 日期时间)——这不允许使用
dt访问器。 -
很好地解释了为什么这样做@MrFuppes - 谢谢
标签: python pandas dataframe datetime timezone