ValueError:使用.apply(lambda)时,系列的真值不明确

时间:2020-10-14 01:13:50

标签: pandas

我从这段代码中获取值错误,如果在my_array中找到了'id',我想将其标记为True

df['exist'] = df['id'].apply(lambda x: True if df['id'].isin(my_array) else False)

我知道值错误可能是由于在代码中使用“和”,“或”而不是“&”,“ |”引起的。但是,我没有使用任何这些。

1 个答案:

答案 0 :(得分:1)

df['id'].isin(my_array)本身是一个序列,if df['id'].isin(my_array)会引发该错误,因为Python不知道如何将一个序列视为一个单独的True/False

只需使用isin而不使用任何apply

df['exist'] = df['id'].isin(my_array)