首页 > 解决方案 > 从 UTC 转换为 EST 时区后,将 Pandas DataFrame 列转换为对象数据类型 esp DateTime[64]

问题描述

问题:

我有一个从雪花中提取数据的数据框,它有大约 120 列,其中很少有 UTC 格式的日期列。原始数据帧:

数据

a   b   c   d

1   ad  1.0 2020-01-20 12:21:20

使用下面的代码我已更改为 EST 格式。

df.d=df.d.dt.tz_convert['EST'] ---> 工作正常。

时区转换后的数据: 数据:

a   b   c   d
1   ad  1.0 2020-01-20 07:21:20-05:00

名称 : d, dtype:datetime64[ns,US/Eastern]

现在我正在尝试使用以下方法将数据帧 dtypes 转换为 Obj:

data_new=pd.Dataframe.from_records(data).convert_dtypes().astype(str)

上述代码的输出:

数据:

a   b   c   d
1   ad  1.0 2020-01-20 12:21:20

名称 : d, dtype:datetime64[ns,US/Eastern]

请帮助我在这里做错了什么。为什么转换后的 DF 没有 d 列的确切值 [它在应用 asdype 时转换回 UTC 格式。

标签: python-3.xpandasdatetime

解决方案


推荐阅读