📜  Python - 将 excel 序列日期转换为日期时间(1)

📅  最后修改于: 2023-12-03 15:18:52.399000             🧑  作者: Mango

Python - 将 Excel 序列日期转换为日期时间

在 Excel 中,日期通常以序列形式呈现,例如 43889 表示 2020 年 1 月 1 日。在 Python 中,我们可以使用 datetime 模块将此类序列转换为可读日期时间格式。

读取 Excel 文件

首先,我们需要读取要处理的 Excel 文件。我们可以使用 pandas 模块来读取 Excel 文件。

import pandas as pd

df = pd.read_excel('example.xlsx')
print(df)

此代码将打印出 Excel 文件中的所有数据,并将其存储在 df 变量中。

转换日期

接下来,我们将使用 datetime 模块将 Excel 序列日期转换为日期时间格式。我们将使用 to_datetime() 函数来完成此操作。

from datetime import datetime, timedelta

base = datetime(1899, 12, 30) # Excel 序列日期的基准日期

def excel_to_datetime(xl_serial):
    if xl_serial == None:
        return None
    else:
        return base + timedelta(days=xl_serial)
        
df['date'] = df['date'].apply(excel_to_datetime)
print(df)

在此代码中,excel_to_datetime 函数将 Excel 序列日期转换为日期时间格式。我们使用 apply() 函数将其应用于 date 列中的每个元素,并将结果存储在新的 date 列中。

结论

通过上述代码,我们可以将 Excel 序列日期转换为易于阅读的日期时间格式。此方法可用于处理和分析任何使用 Excel 序列日期的数据集。