gpt4 book ai didi

python - Pandas :如何获得第一个正数?

转载 作者:行者123 更新时间:2023-11-28 22:10:22 24 4
gpt4 key购买 nike

我有一个像这样的 Pandas 数据框:

name    a    b    c
jack -10 -6 -10
bill -6 -3 -5
ray -3 -12 -9
pew 4 -23 -2
shaun 12 3 2
mitch 3 5 2

我如何制作一个新的数据框,它从每个相应的列(a、b、c)中获取第一个正值,并将该列中的所有值除以该列中选定的第一个正值并存储除法结果代替所有的值。输出应该是这样的

name    a      b      c
jack -10/4 -6/3 -10/2
bill -6/4 -3/3 -5/2
ray -3/4 -12/3 -9/2
pew 4/4 -23/3 -2/2
shaun 12/4 3/3 2/2
mitch 3/4 5/3 6/2

最佳答案

另一种方式:

m=df.set_index('name')
final=m.div(m.mask(m.lt(0)).bfill().iloc[0]).reset_index()

    name     a         b    c
0 jack -2.50 -2.000000 -5.0
1 bill -1.50 -1.000000 -2.5
2 ray -0.75 -4.000000 -4.5
3 pew 1.00 -7.666667 -1.0
4 shaun 3.00 1.000000 1.0
5 mitch 0.75 1.666667 1.0

关于python - Pandas :如何获得第一个正数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56835948/

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