根据另外两个标志的值计算标志



>我有三个字段,client_id,flag_1(0或1(和flag_2(0或1(。对于每个客户端,我需要计算flag_3如果 == 1 和 flag_2 ==1 都等于 1,flag_1否则为 0。

我试过:

df['flag_3'] = [1 if x==1 and y==1 else 0 for x in df['flag_1'] and y in df['flag_2']]
df['flag_3'] = np.where(df['flag_1'] == 1 and df['flag_2'] == 1, 1, 0)

。收到诸如"序列的真值不明确"之类的错误。

您正在使用布尔索引来选择行,并且索引应使用二进制"&"进行组合

df['flag_3'] = np.where((df['flag_1'] == 1) & (df['flag_2'] == 1), 1, 0)

相关内容

最新更新