Numpy.用条件从两个列的值选择并分配df中的新列


df  = df.assign[test  = np.select[df.trs = 'iw' & df.rp == 'yu'],[1,0],'null']

我想要if df.trs ==iw'和df。Rp == 'yu' ' than新列应该创建应该是0,否则1只适用于条件填充行,而不是每一行

我试过了。选择和条件数组。但是没有得到想要的输出

你不需要numpy.select,一个简单的布尔运算符就足够了:

df['test'] = (df['trs'].eq('iw') & df['rp'].eq('yu')).astype(int)

如果你真的想使用numpy,这将需要numpy.where:

df['test'] = np.where(df['trs'].eq('iw') & df['rp'].eq('yu'), 1, 0)

最新更新