python - 使用 apply 在 pandas 数据框中的其他列中查找列值?

标签 python pandas lambda

我有一个具有以下形式的 df:

        id  Tg n0  n1  n2
fddef72025   W  A   B   C
fddef72025   A  A   B   C
fddef72025   Y  A   B   C
fddef72025   B  A   B   C

如果 Tgdf.n0df.n1 中,我需要创建一个新列并存储 1 >df.n2,例如上面的df:

        id  Tg n0  n1  n2  exists
fddef72025   W  A   B   C       0
fddef72025   A  A   B   C       1
fddef72025   Y  A   B   C       0
fddef72025   B  A   B   C       1

到目前为止,我的解决方案涉及“iterrows”,但我确定有办法df.apply这个?

最佳答案

国际联合会

df.loc[:,'n0':].isin(df.Tg).any(1).astype(int)
0    0
1    1
2    0
3    1
dtype: int64

关于python - 使用 apply 在 pandas 数据框中的其他列中查找列值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58805221/

相关文章:

python - 从 pandas 中的分组分配值

python - np.logical_and 三个测试

Python pandas从mysql获取最大值

c# - Linq ConcurrentDictionary 角色和用户多对多

java - Java Lambda 表达式是否利用 "Hidden"或本地包导入?

python - 将 python for 循环的一次迭代的输出通过管道传输到另一个脚本

python - Django,ManyToManyField - ProgrammingError : relation foo_bar does not exist. 在迁移中被识别,但从未创建关系

python - 如何根据目标像素替换 Numpy 图像数组中的所有 RGB 值

python - 如何隐藏主窗口标题栏并在 kivy 框架中放置透明背景?

lambda - 比较器作为 lambda