📅  最后修改于: 2023-12-03 15:21:53.350000             🧑  作者: Mango
在数据分析中,日期时间戳通常是非常重要且必需的。在 pandas 中,可以使用 datetime 类型或 Timestamp 类型轻松处理这些时间信息。在本文中,我们将介绍如何从 pandas 中提取日期信息。
我们将使用以下示例数据来演示,它包含一些列不同日期时间戳的数据:
import pandas as pd
df = pd.DataFrame({
'date': pd.to_datetime(['2021-01-01', '2021-01-02', '2021-01-03', '2021-01-04']),
'value': [10, 20, 30, 40]
})
print(df)
输出结果为:
date value
0 2021-01-01 10
1 2021-01-02 20
2 2021-01-03 30
3 2021-01-04 40
要从日期时间戳中提取年份、月份和日份,可以使用 .dt.year
、.dt.month
和 .dt.day
属性。以下是示例代码:
df['year'] = df['date'].dt.year
df['month'] = df['date'].dt.month
df['day'] = df['date'].dt.day
print(df)
输出结果为:
date value year month day
0 2021-01-01 10 2021 1 1
1 2021-01-02 20 2021 1 2
2 2021-01-03 30 2021 1 3
3 2021-01-04 40 2021 1 4
要从日期时间戳中提取星期几,可以使用 .dt.dayofweek
或 .dt.weekday
属性。这两个属性是等效的,但是使用哪一个取决于您的个人偏好。以下是示例代码:
df['weekday'] = df['date'].dt.dayofweek
print(df)
输出结果为:
date value year month day weekday
0 2021-01-01 10 2021 1 1 4
1 2021-01-02 20 2021 1 2 5
2 2021-01-03 30 2021 1 3 6
3 2021-01-04 40 2021 1 4 0
在这个示例中,星期一被编码为0,星期日被编码为6。
要从日期时间戳中提取小时、分钟和秒数,可以使用 .dt.hour
、.dt.minute
和 .dt.second
属性。以下是示例代码:
df['hour'] = df['date'].dt.hour
df['minute'] = df['date'].dt.minute
df['second'] = df['date'].dt.second
print(df)
输出结果为:
date value year month day weekday hour minute second
0 2021-01-01 10 2021 1 1 4 0 0 0
1 2021-01-02 20 2021 1 2 5 0 0 0
2 2021-01-03 30 2021 1 3 6 0 0 0
3 2021-01-04 40 2021 1 4 0 0 0 0
在本文中,我们介绍了如何从 pandas 中提取 DATE,包括如何提取年份、月份、日份、星期几、小时、分钟和秒数。以上技巧可以在处理日期时间戳数据时非常有用。