我有以下数据框:
id date
1 2019-09-28
2 NaT
3 2017-09-28
我想将日期列与日期进行比较:2018-09-28。然后添加一个列状态,该列状态根据比较结果添加字符串“ Greater”或“ Less”。因此输出将是这样的:
id date status
1 2019-09-28 Greater
2 NaT
3 2017-09-28 Less
答案 0 :(得分:4)
对于Pandas datetime
系列,您可以将值与字符串进行比较:
df['date'] = pd.to_datetime(df['date'])
df['status'] = np.where(df['date'] >= '2018-09-28', 'Greater', 'Less')
df.loc[df['date'].isnull(), 'status'] = ''
print(df)
id date status
0 1 2019-09-28 Greater
1 2 NaT
2 3 2017-09-28 Less