在dataframe列中获取最接近年底的日期可以通过以下步骤实现:
以下是示例代码:
import pandas as pd
# 创建示例数据
data = {'date': ['2021-01-01', '2021-06-30', '2021-12-31', '2022-01-01', '2022-12-31']}
df = pd.DataFrame(data)
# 将日期列转换为datetime类型
df['date'] = pd.to_datetime(df['date'])
# 按年份分组并排序
df_grouped = df.groupby(df['date'].dt.year).apply(lambda x: x.sort_values('date'))
# 计算每个日期与年底日期的差值
df_grouped['diff'] = df_grouped['date'].apply(lambda x: (pd.Timestamp(x.year + 1, 1, 1) - x).days)
# 找到每个年份组中差值最小的索引
idx_min = df_grouped.groupby(df_grouped['date'].dt.year)['diff'].idxmin()
# 获取最接近年底的日期
result = df_grouped.loc[idx_min]
print(result)
这段代码将返回最接近年底的日期所在的行。你可以根据实际需求对结果进行进一步处理或提取所需信息。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云