如何根据python中循环的最后一个最大日期条件按降序筛选和删除行



嗨,我正在尝试做一个for循环,其中使用日期列的最大日期返回来过滤数据帧,如果行数==1,则删除并继续这样做,直到最大日期!=1.此处的最大日期是指数据帧中日期列上的最大日期。我在这里进行降序的目的是,因为数据每天都会附加到数据帧中,所以如果只返回1行,我会检查最后一个日期,如果是,则删除,以便不同函数的附加功能可以从最长日期开始继续附加。这张桌子就像

(零((零(
日期 姓名 年龄
2022-04-01 约翰 15
2022-04-01 jane 15
2022-04-01 Swansa 15
2022-04-02 Timmy 15
2022-04-02 (空( 15
2022-04-02 (空( 15
2022-04-03 (空( 15
2022-04-04 (空(
2022-04-05 (空(

您可以尝试使用groupbytransform

df['date'] = pd.to_datetime(df['date'])
df_filtered = df[(df.groupby('date')['names'].transform('count')!=1) | (df['date'].dt.year != 2022)]
日期02022-04-01john5//tr>12022-04-0122022-04-01Swansa1532022-04-0242022-04-02null(15[/tr>52022-04-02/table>

最新更新