-1

我正在努力在数据框中进行 datetime64 比较以更新列。假设我们有一个带有“日期”列的数据框“df”

df.date.values[0]
Out[128]: numpy.datetime64('2015-05-17T22:00:00.000000000+0800') 

我需要删除时间并进行日期比较,因此要提取我使用的日期 .date()

df.date[0].date()
Out[131]: datetime.date(2015, 5, 17)

我先测试一下

df.date[0].date()==np.datetime64('2015-05-17')
Out[132]: True

所以一切似乎都很好,如果日期列等于特定日期,我尝试做一个条件,将另一列更新为另一个值

df[df.date[0].date()==np.datetime64('2015-05-17')].flag=True

我得到一个 KeyError: True

我该如何正确地做到这一点?

4

1 回答 1

2

您是否尝试过类似的方法:

flag = pd.Series(np.where(df.date == np.datetime64('2015-05-17'), True, False), index=df.index)

flag 将是您稍后使用的一系列 True/False 值。

于 2015-06-08T12:58:52.320 回答