Pandas如何将Excel日期转换为Python日期格式

Pandas如何将Excel日期转换为Python日期格式

在本文中,我们将介绍如何使用Pandas将Excel中的日期格式转换为Python中的日期格式。我们将首先介绍Excel中日期格式的不同,然后讨论如何使用Pandas进行转换。

阅读更多:Pandas 教程

Excel中的日期格式

在Excel中,日期和时间表示为数字,其中日期默认从1900年1月1日开始计算。例如,Excel中的1表示1900年1月1日,2表示1900年1月2日,以此类推。Excel还提供了许多内置日期和时间格式,如“2022-01-01”,“01/01/2022”或“1月1日22号”,我们将这些称为Excel风格的日期。

尽管Excel可以解释这些日期格式,但Python无法识别它们。在Python中,我们需要将这些日期格式转换为datetime对象,才能进行操作和分析。

Pandas的日期转换

Pandas提供了许多可以轻松转换日期格式的函数和类。下面我们介绍其中几个实用的方法。

使用Pandas读取Excel文件

首先,我们需要使用Pandas读取Excel文件。我们可以使用 read_excel 函数来做到这一点:

import pandas as pd

df = pd.read_excel('sample.xlsx')
Python

这将读取包含Excel样式日期格式的文件,并将它们存储在Pandas DataFrame 中。

转换日期格式

有多种方法可以转换Excel日期格式,下面我们介绍其中两种:

1. 使用to_datetime函数

Pandas的to_datetime函数可以将一组任意日期时间对象转换为Timestamp类型。

首先,我们需要将Excel日期值转换为Python datetime对象,然后使用to_datetime函数将其转换为Timestamp对象。

df['Date'] = pd.to_datetime(df['Date'], origin='1900-01-01')
Python

在这个例子中,'Date'列是我们想要转换的日期列。to_datetime函数的第二个参数'origin'是我们为Excel设置的起始日期。

2. 使用date_parser将日期解析为Python datetime格式

Pandas的 read_excel 函数有一个名为 parse_dates 的选项,它允许我们指定哪些列包含日期,并使用一个函数或字符串将其解析为Python datetime格式。例如:

df = pd.read_excel('sample.xlsx', parse_dates=['Date'])
Python

这里我们告诉 read_excel 函数,我们希望将 'Date' 列解析为日期,并使用默认的解析器将其转换为Python datetime格式。

示例

用一个简单的示例来展示如何使用Pandas将Excel日期转换为Python日期格式。

我们有如下的Excel文件sample.xlsx

Date Amount
44235 100.00
44236 200.00

使用Pandas读取数据:

import pandas as pd

df = pd.read_excel('sample.xlsx')
Python

这将把sample.xlsx的数据读入一个Pandas DataFrame。

print(df)

# Output:
#         Date  Amount
# 0 2021-09-10   100.0
# 1 2021-09-11   200.0
Python

我们可以看到,日期已经被转换为Python datetime格式。

总结

在本文中,我们介绍了Excel日期格式的一些不同,并展示了如何使用Pandas将Excel风格的日期转换为Python datetime格式。我们讨论了转换日期的两种方法,包括使用 to_datetime 函数和 parse_dates 选项。希望本文能帮助您更好地理解和转换Excel日期格式。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册