繁体   English   中英

使用 Python 和 Pandas 将 Zulu 日期/时间转换为精确日期

[英]Converting Zulu Date/Time to Just Date Using Python and Pandas

我的开始和结束时间如下所示:

开始时间:2017-03-05T19:18:53Z

结束:2017-03-05T19:57:54.042000Z

使用以下内容,我转换为 datetime64[ns, UTC] dtype

# Create a copy of the user_df
format_time_user_df = user_df.copy()

# Convert the start and end to a datetime format
format_time_user_df.loc[:, ['start', 'end']] = format_time_user_df.loc[:, ['start', 'end']].apply(pd.to_datetime, errors='coerce')

导致开始和结束时间如下所示:

开始时间:2017-03-05 19:18:53+00:00

结束:2017-03-05 19:57:54.042000+00:00

现在,我尝试使用以下方法仅保留日期:

format_time_user_df['start'].dt.normalize()

这似乎不会影响开始日期/时间的格式(更不用说结束日期/时间)。

我错过了什么? 我在 StackOverflow 上查看了许多帖子,但他们的解决方案似乎没有帮助(或者我没有正确实施它们)。 我试图用尽可能少的代码行来做到这一点。

欣赏正确方向的推动。

如果您使用.loc[:, ...] = ,您的值将被更新,但列不会,所以:

代替:

df.loc[:, ['start', 'end']] = ...

经过:

df[['start', 'end']] = ...

现在您可以使用:

>>> df['start'].dt.normalize()
0   2017-03-05 00:00:00+00:00
Name: start, dtype: datetime64[ns, UTC]

设置:

df = pd.DataFrame({'start': ['2017-03-05T19:18:53Z'],
                   'end': ['2017-03-05T19:57:54.042000Z']})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM