📅  最后修改于: 2023-12-03 14:52:50.553000             🧑  作者: Mango
在数据分析和处理中,日期和时间是重要的数据类型之一。在Python中,Pandas库提供了方便的工具用于处理日期和时间数据。本文将介绍如何在Python中更改 Pandas 日期时间格式。
在 Pandas 中,日期和时间数据类型通常有两种表示方式:表示为字符串或表示为时间戳。
日期时间字符串通常采用标准的ISO格式,如"2021-05-01T12:00:00"或"2021/05/01 12:00:00"。
时间戳是从1970年1月1日开始计算的秒数,也称为UNIX时间戳。Pandas库提供了数据类型Timestamp来表示时间戳类型的数据。
在 Pandas 中,我们可以使用to_datetime()方法将日期时间字符串转换为Timestamp格式。这个方法可以自动根据输入的字符串格式进行解析,如果无法解析,则返回NaT(Not a Time)。
import pandas as pd
dates = ["2021-05-01T12:00:00", "2021-05-02T12:00:00", "2021-05-03T12:00:00"]
df = pd.DataFrame({"dates": dates})
df["dates"] = pd.to_datetime(df["dates"])
print(df)
输出结果为:
dates
0 2021-05-01 12:00:00
1 2021-05-02 12:00:00
2 2021-05-03 12:00:00
可以看到,程序将字符串格式的日期时间转换为Pandas库的Timestamp格式,便于后续计算和处理。
在默认情况下,Pandas库将Timestamp格式的日期时间转换为ISO格式的字符串。但我们也可以使用strftime()方法或直接在DataFrame中修改格式来更改时间格式。
# 使用strftime()方法更改时间格式
df["dates"] = df["dates"].dt.strftime("%Y/%m/%d %H:%M:%S")
print(df)
# 直接在DataFrame中修改时间格式
df["dates"] = df["dates"].dt.strftime("%Y/%m/%d %H:%M:%S")
print(df)
输出结果为:
dates
0 2021/05/01 12:00:00
1 2021/05/02 12:00:00
2 2021/05/03 12:00:00
可以看到,使用strftime()方法或在DataFrame中直接修改格式都可以更改时间格式。需要注意的是,在DatetimeIndex索引对象中,修改格式后的结果将自动成为新的索引时间格式。
在本文中,我们介绍了如何使用Pandas库在Python中处理日期和时间数据。除了使用to_datetime()方法将字符串转换为Timestamp格式之外,还介绍了如何更改时间格式。在数据分析和处理中,日期和时间经常需要进行格式转换和处理,我们可以灵活地使用Pandas库提供的工具完成这些任务。