📌  相关文章
📜  选择两个日期之间的 Pandas 数据框行(1)

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

选择两个日期之间的 Pandas 数据框行

在处理时间序列数据时,我们经常需要从数据框中选择两个日期之间的行。本文介绍如何使用 Pandas 轻松地实现这一功能。

首先,我们需要确保日期列已经被识别为 Datetime 类型。假设数据框名为 df,日期列名为 date,我们可以使用如下代码将其转换为 Datetime 类型:

df['date'] = pd.to_datetime(df['date'])

接下来,我们可以使用 Pandas 的比较运算符筛选两个日期之间的行。例如,如果我们想选择 2021 年 1 月 1 日和 2021 年 1 月 31 日之间的行,可以使用如下代码:

start_date = '2021-01-01'
end_date = '2021-01-31'
mask = (df['date'] >= start_date) & (df['date'] <= end_date)
df_between_dates = df.loc[mask]

这里的 mask 是一个布尔型数组,表示每一行是否满足条件。我们可以使用这个数组来选择符合条件的行。

最后,我们可以使用 Pandas 的 loc 方法选择符合条件的行,并将其赋值给一个新的数据框 df_between_dates

需要注意的是,日期字符串的格式应该与 Pandas 中的 Datetime 格式相同。如果不同,我们需要在 pd.to_datetime() 中指定格式参数。

下面是完整的代码片段:

import pandas as pd

# load data
df = pd.read_csv('data.csv')

# convert date column to Datetime type
df['date'] = pd.to_datetime(df['date'])

# select rows between start_date and end_date
start_date = '2021-01-01'
end_date = '2021-01-31'
mask = (df['date'] >= start_date) & (df['date'] <= end_date)
df_between_dates = df.loc[mask]

以上就是选择两个日期之间的 Pandas 数据框行的介绍。希望对你有所帮助!