gpt4 book ai didi

python - 当满足条件时,使列行与另一列的匹配值相同

转载 作者:行者123 更新时间:2023-12-02 18:31:28 24 4
gpt4 key购买 nike

我有一个如下所示的数据框

df = pd.DataFrame({'col1': ['A', 'A', 'B', 'C', 'D', 'D'],
'col2': [1,0,1,0,0,1]})
<表类=“s-表”><标题>col1col2 <正文>一个1一个0B1C0D0D1

如果 col2 = 1 中有一行,我想让所有 col2 行 = 1 以获得相同的值 col1 值。我想要的表格如下:

<表类=“s-表”><标题>col1col2 <正文>一个1一个1B1C0D1D1

非常感谢任何帮助!

最佳答案

您可以分两步进行分块:

获取 col2 为 1 的行:

filters = df.loc[df.col2.eq(1), 'col1']

将新值分配给行,其中 col1 位于过滤器中:

df.loc[df.col1.isin(filters), 'col2'] = 1

df

col1 col2
0 A 1
1 A 1
2 B 1
3 C 0
4 D 1
5 D 1

关于python - 当满足条件时,使列行与另一列的匹配值相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69386176/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com