根据条件更改熊猫数据框子组上特定列的值

我有一个类似于以下数据框:

A B  C
1 0 0.0
1 2 0.2
1 3 1.0
2 1 0.2
2 4 0.0
2 6 1.0
3 1 0.4
3 2 1.0
3 0 0.9
3 3 0.0

现在,对于每个子组,其中一个子组将具有一个共享的A值,我想找到具有最小B值的行,然后将该行的C值更改为0.5。在这种情况下,我将获得一个新的数据框:

A B  C
1 0 0.5
1 2 0.2
1 3 1.0
2 1 0.5
2 4 0.0
2 6 1.0
3 1 0.4
3 2 1.0
3 0 0.5
3 3 0.0

作为补充,如果此操作替换C列中的0.0或1.0,那么我希望该行与其旧值重复。在这种情况下,A=1子组违反了此规则(将0.0替换为0.5),因此应产生:

A B  C
1 0 0.0
1 0 0.5
1 2 0.2
1 3 1.0
...

第一个问题是主要问题,第二个问题不是优先考虑的问题,但是当然欢迎任何一个提供帮助。

广晃

尝试:

df.loc[df.groupby('A')['B'].idxmin(), 'C'] = 0.5

输出:

   A  B    C
0  1  0  0.5
1  1  2  0.2
2  1  3  1.0
3  2  1  0.5
4  2  4  0.0
5  2  6  1.0
6  3  1  0.4
7  3  2  1.0
8  3  0  0.5
9  3  3  0.0

对于附录:

# minimum B rows 
min_rows = df.groupby('A')['B'].idxmin()
# minimum B rows with C==0
zeros = df.loc[min_rows].loc[lambda x: x['C']==0].copy()

# change all min rows to 0.5
df.loc[min_rows, 'C'] = 0.5

# concat with 0
df = pd.concat([df, zeros])

输出(注意最后一行):

   A  B    C
0  1  0  0.5
1  1  2  0.2
2  1  3  1.0
3  2  1  0.5
4  2  4  0.0
5  2  6  1.0
6  3  1  0.4
7  3  2  1.0
8  3  0  0.5
9  3  3  0.0
0  1  0  0.0

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

熊猫数据框根据条件更改列中的值

来自分类Dev

根据条件更改熊猫中的列值

来自分类Dev

如何根据多种条件更改熊猫数据框列系列中的特定单元格值?

来自分类Dev

如何根据列条目根据特定条件更改熊猫列数据?

来自分类Dev

在熊猫数据框中根据条件为组创建列

来自分类Dev

根据条件更改熊猫数据

来自分类Dev

Pandas 数据框如何根据特定组和上一行值为列赋值

来自分类Dev

根据条件过滤熊猫数据框-在NaN值上失败

来自分类Dev

自动化识别值没有明显差异的熊猫数据框子组的过程

来自分类Dev

根据重复项更改熊猫数据框列的值

来自分类Dev

熊猫根据特定条件选择数据

来自分类Dev

熊猫根据特定条件选择数据

来自分类Dev

熊猫根据多种条件更改多列

来自分类Dev

熊猫根据条件替换数据框值

来自分类Dev

熊猫| 根据条件复制数据框值

来自分类Dev

根据条件修改熊猫数据框值

来自分类Dev

根据特定列更改数据框中的值

来自分类Dev

根据两列或更多列的条件更改熊猫中的列值

来自分类Dev

根据字典更改熊猫数据框值

来自分类Dev

熊猫如何根据最后一个元素的条件保留值或更改列的值

来自分类Dev

根据条件更新熊猫中的列值

来自分类Dev

分组并根据熊猫数据框中的其他列比较/过滤特定组

来自分类Dev

根据条件在数据框列中更改值,在另一列中更改值

来自分类Dev

根据条件选择熊猫数据框的列

来自分类Dev

根据条件选择熊猫数据框的列

来自分类Dev

熊猫:根据另一列中的条件更改该列的先前单元格值

来自分类Dev

根据数据框中的其他列更改熊猫数据框的列值

来自分类Dev

熊猫数据框根据另一个字段的条件更改值

来自分类Dev

熊猫数据框找到低于组内列中特定值的最后一个值

Related 相关文章

  1. 1

    熊猫数据框根据条件更改列中的值

  2. 2

    根据条件更改熊猫中的列值

  3. 3

    如何根据多种条件更改熊猫数据框列系列中的特定单元格值?

  4. 4

    如何根据列条目根据特定条件更改熊猫列数据?

  5. 5

    在熊猫数据框中根据条件为组创建列

  6. 6

    根据条件更改熊猫数据

  7. 7

    Pandas 数据框如何根据特定组和上一行值为列赋值

  8. 8

    根据条件过滤熊猫数据框-在NaN值上失败

  9. 9

    自动化识别值没有明显差异的熊猫数据框子组的过程

  10. 10

    根据重复项更改熊猫数据框列的值

  11. 11

    熊猫根据特定条件选择数据

  12. 12

    熊猫根据特定条件选择数据

  13. 13

    熊猫根据多种条件更改多列

  14. 14

    熊猫根据条件替换数据框值

  15. 15

    熊猫| 根据条件复制数据框值

  16. 16

    根据条件修改熊猫数据框值

  17. 17

    根据特定列更改数据框中的值

  18. 18

    根据两列或更多列的条件更改熊猫中的列值

  19. 19

    根据字典更改熊猫数据框值

  20. 20

    熊猫如何根据最后一个元素的条件保留值或更改列的值

  21. 21

    根据条件更新熊猫中的列值

  22. 22

    分组并根据熊猫数据框中的其他列比较/过滤特定组

  23. 23

    根据条件在数据框列中更改值,在另一列中更改值

  24. 24

    根据条件选择熊猫数据框的列

  25. 25

    根据条件选择熊猫数据框的列

  26. 26

    熊猫:根据另一列中的条件更改该列的先前单元格值

  27. 27

    根据数据框中的其他列更改熊猫数据框的列值

  28. 28

    熊猫数据框根据另一个字段的条件更改值

  29. 29

    熊猫数据框找到低于组内列中特定值的最后一个值

热门标签

归档