处理数据集时,经常会遇到 Excel 样式格式的日期,其中浮点数表示数字自特定纪元日期以来的天数。 Pandas 提供了一种便捷的方法将这些数字转换为常规日期时间对象,从而实现无缝数据操作和分析。
在提供的内容中概述的情况下,目标是解析包含 Excel 样式的日期的 XML 文件,如42580.3333333333。为了实现这一点,Pandas 提供了一个使用 TimedeltaIndex 的简单解决方案:
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)
此代码从浮点值构造一个 TimedeltaIndex 并将其添加到 1900 年 1 月 1 日的标量日期时间中,有效地将 Excel 日期转换为日期时间
但是,需要注意的是,Excel 使用的纪元日期与标准日期时间对象略有不同,因此结果日期可能需要相应调整。为了解决这个问题,可以按如下方式修改代码:
df['real_date'] = pd.TimedeltaIndex(df['date'], unit='d') + dt.datetime(1899, 12, 30)
这可确保 Excel 样式日期转换为正确的日期时间值,从而在 Pandas 框架内实现准确的数据处理和分析。
以上是Pandas 如何高效解析 Excel 风格的日期?的详细内容。更多信息请关注PHP中文网其他相关文章!