【发布时间】:2020-01-06 14:40:51
【问题描述】:
我正在尝试编写一个函数,该函数将根据同一 dataframe ('cnms_df') 中另一列中的值填充一个名为 'BS_Trigger' 的新列。
today = datetime.datetime.today().strftime('%Y%m%d')
....
def bs_trigger(dataframe):
dataframe['BS_Trigger'] = np.where((dataframe['PRELIM_DATE'] != None) and (dataframe['PRELIM_DATE'] <= today), "Yes", "No")
bs_trigger(cnms_df)
使用上面的代码,我不断收到一个值错误:
ValueError:Series 的真值不明确。使用a.empty, a.bool()、a.item()、a.any() 或 a.all()。
我在这里做错了什么? 注意: 如果 `cnms_df['PRELIM_DATE'][i] = None' ,则该值为 NoneType,而不是字符串 ***
【问题讨论】:
-
使用位运算符 & 代替逻辑运算符 and。
标签: python-3.x pandas dataframe conditional-statements