我正在努力与数据帧中的datetime64比较来更新列。假设我们有一个带有'date'列的数据框'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
我该如何正确地做到这一点?
答案 0 :(得分:0)
你有没有试过像:
flag = pd.Series(np.where(df.date == np.datetime64('2015-05-17'), True, False), index=df.index)
标志将是您稍后使用的一系列True / False值。