以下是一个按照分区进行最小日期过滤的示例代码:
import pandas as pd
# 创建示例数据
data = {'date': ['2021-01-01', '2021-01-02', '2021-01-03', '2021-01-01', '2021-01-02', '2021-01-03'],
'category': ['A', 'A', 'A', 'B', 'B', 'B'],
'value': [1, 2, 3, 4, 5, 6]}
df = pd.DataFrame(data)
# 将日期列转换为日期类型
df['date'] = pd.to_datetime(df['date'])
# 按照分区进行最小日期过滤
df_filtered = df.groupby('category').apply(lambda x: x[x['date'] == x['date'].min()])
print(df_filtered)
输出结果为:
date category value
category
A 0 2021-01-01 A 1
B 3 2021-01-01 B 4
此代码示例中,首先将日期列转换为日期类型,然后使用groupby
方法按照category
进行分组。接着,使用lambda
函数在每个分组中过滤出日期等于最小日期的行,最后将结果存储在df_filtered
中。