创建一列来回答一个列中的单元格是否位于其他四个列中的一个列中

问题描述 投票:0回答:2

我想创建一个列来回答'A'列中的字符串值位于'B'或'C'中。如果可以简化,可以将它们转换为float或int。

Data:
 A    B    C       OUTPUT
 A    B    C     No/False
 B    B    B     Yes/True
 A    A    C     Yes/True
 A    C    A     Yes/True
pandas conditional-statements calculated-columns
2个回答
0
投票

您可以做

df["output"] = df.apply(lambda x: True if x["a"] in (x["b"], x["c"]) else False)

0
投票

让我们尝试sin

df[['B','C']].isin(df.A).any(1)

0    False
1     True
2     True
3     True
dtype: bool

0
投票

您可以使用.isin

df['OUTPUT'] = df[df.columns[1:]].isin(df['A']).any(1)

   A  B  C  OUTPUT
0  A  B  C   False
1  B  B  B    True
2  A  A  C    True
3  A  C  A    True
© www.soinside.com 2019 - 2024. All rights reserved.