首页 > 后端开发 > Python教程 > Pandas 如何将 Excel 样式的日期转换为标准日期时间对象?

Pandas 如何将 Excel 样式的日期转换为标准日期时间对象?

DDD
发布: 2024-12-01 10:56:11
原创
982 人浏览过

How Can Pandas Convert Excel-Style Dates to Standard Datetime Objects?

使用 Pandas 转换 Excel 样式日期

处理 XML 文件时,可能会遇到 Excel 样式格式的时间戳,例如 42580.3333333333。幸运的是,Pandas 提供了一种简单的方法将这些数值转换为常规日期时间对象。

为了完成此转换,我们利用两个关键组件:TimedeltaIndex 和标量日期时间。 TimedeltaIndex 是根据 Excel 样式的浮点值创建的,表示自特定日期以来的天数。通过将此 TimedeltaIndex 添加到 1900 年 1 月 1 日的标量日期时间,我们可以有效地将时间戳调整为其相应的日期和时间。

下面是演示此过程的示例:

import pandas as pd
import datetime as dt

df = pd.DataFrame({'date': [42580.3333333333, 10023]})
df['real_date'] = pd.TimedeltaIndex(df['date'], unit='d') + dt.datetime(1900, 1, 1)

print(df)
登录后复制

输出:

           date                  real_date
0  42580.333333 2016-07-31 07:59:59.971200
1  10023.000000 1927-06-12 00:00:00.000000
登录后复制

或者,如果您正在处理源自 Excel 日期的日期系统于 1899 年 12 月 30 日开始,您可以按如下方式调整转换:

df['real_date'] = pd.TimedeltaIndex(df['date'], unit='d') + dt.datetime(1899, 12, 30)
登录后复制

此更正使日期与 Excel 的内部日期系统保持一致,确保日期转换准确。

以上是Pandas 如何将 Excel 样式的日期转换为标准日期时间对象?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板