📅  最后修改于: 2023-12-03 15:38:22.400000             🧑  作者: Mango
在 Pandas 中,日期时间对象是由 pandas.Timestamp 类型表示的。Python 中的 datetime 对象可以通过 Pandas 转换为 Timestamp 对象。如果只需日期而不需要时间,则需要将 Timestamp 对象转换为日期对象。下面是如何在 Pandas 中将日期时间转换为日期的示例代码:
import pandas as pd
# 创建示例时间戳对象
ts = pd.Timestamp('2021-09-22 10:30')
# 转换为日期对象
date_only = ts.date()
# 打印结果
print(f"Timestamp: {ts}")
print(f"Date only: {date_only}")
执行以上代码将得到以下输出:
Timestamp: 2021-09-22 10:30:00
Date only: 2021-09-22
在上面的示例代码中,我们首先使用 pd.Timestamp()
函数创建了一个示例时间戳对象 ts
,其日期时间为 2021 年 9 月 22 日 10:30。接着,我们使用 ts.date()
方法将 Timestamp 对象转换为日期对象,仅保留了日期部分。最后,我们打印了 Timestamp 对象和日期对象的值。
需要注意的是,如果调用 Timestamp 对象的 date()
方法,则会返回一个 datetime.date 类型的对象。如果需要在 Pandas 中继续处理日期对象,则可以将日期对象转换为 Pandas 的日期类型,即 pandas.Timestamp 类型。
如果想要将一个 Pandas 数据框的时间戳类型的列转换为日期类型,可以使用以下代码:
import pandas as pd
# 创建示例数据
df = pd.DataFrame({'date': ['2021-09-22 10:30:00', '2021-09-23 11:45:00']})
# 将 'date' 列转换为 Pandas 的日期类型
df['date'] = pd.to_datetime(df['date']).dt.date
# 打印结果
print(df)
以上代码使用 pd.to_datetime()
方法将 'date' 列中的时间戳字符串转换为 Pandas 的时间戳类型对象。随后,使用 .dt.date
属性将 Timestamp 对象转换为日期对象。
上面的代码输出如下:
date
0 2021-09-22
1 2021-09-23
通过以上两个示例,我们了解了如何在 Pandas 中将日期时间转换为日期。你也可以根据自己的需求,进一步使用 Pandas 处理时间序列数据。