2024-05-19 19:18:12 发布
网友
如果与此组相对应的另一列中有1,我将尝试将一组值中的所有相同值替换为0
这里是一个我想要的输出示例,如果Y列中有1,我希望输入列中由1组成的所有组都是0。 对于速度问题,我不想使用任何交叉每个列值的循环(假设我的列可以有数千个值)
非常感谢
使用:
df['output']=(df['Y'].ne(1) .groupby(df['input'].ne(df['input'].shift()).cumsum()) .transform('all') .mul(df['input']))
或
((~df['Y'].eq(1) .groupby(df['input'].ne(df['input'].shift()).cumsum()) .transform('any')).mul(df['input']))
使用:
或
相关问题 更多 >
编程相关推荐