首页 > 解决方案 > 在 DataFrame 中删除两个日期列匹配的行,否则,更改另一列中的值

问题描述

我有一个看起来如下的df,

df

  id   date      rating_date  rating 
  1  1993-05-20   1993-05-20     3     
  2  1987-03-12   1988-03-12     4    
  3  1994-01-19   1994-10-19     3     
  4  2004-08-03   2004-09-17     2    
  5  2005-10-12   2005-10-12     2    

我希望删除dateequals的行rating_date,如果是 >rating则更改为 NR 。一些指导会很棒!rating_datedate

  id   date      rating_date  rating 
  2  1987-03-12   1988-03-12    NR    
  3  1994-01-19   1994-10-19    NR     
  4  2004-08-03   2004-09-17    NR    

谢谢!

标签: pythonpandasdatetime

解决方案


如果rating_date没有机会小于date,那么

df = df[df['date'] < df['rating_date']]
df['rating'] = 'NR'

推荐阅读