📜  从 pandas 中提取 DATE - Python (1)

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

从 pandas 中提取 DATE - Python

在数据分析中,日期时间戳通常是非常重要且必需的。在 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,包括如何提取年份、月份、日份、星期几、小时、分钟和秒数。以上技巧可以在处理日期时间戳数据时非常有用。