我的数据有问题。所以我想检查B列中a列的一个值,其中包含几个用逗号分隔的值。我想要的结果是,当值存在时,它将用True填充C列,否则将用False填充。
示例表如下:
Column_A | Column_B | Column_C |
---|---|---|
A | A、B、C、AA、BB、CC | 真 |
B | A、AA、BB、CC | 错误 |
C | A、B、C | 真 |
使用split
:
df['Column_C'] = df.apply(lambda x: x.Column_A in x.Column_B.split(', '), axis=1)
如果性能很重要,使用列表理解:
df['Column_C'] = [a in b.split(', ') for a, b in zip(df.Column_A, df.Column_B)]
df['Column_C'] = df.apply(lambda x: x.Column_A in x.Column_B.split(','), axis=1)