lovecpy 发表于 2021-1-26 22:51:48

求某数下方几个数字相加返回行索引怎么解决?

本帖最后由 lovecpy 于 2021-1-27 01:25 编辑

0      100    A
1      -20
2       30   B
3      -70
4      -50
5      500    A
6   -100
7   -420
8    -1000
9      600    A
10    -300
11   700   B
12    -300
13    -600
14    -200
15    -100

如上面得例子,索引0得值是100,如果 100+(-20)+30+(-70)+(-50)< 0 得时候 返回 -50得行索引4 如何得到4?
以此类推,500-100-420<0返回7,600-300+700-300-600-200< 0返回14(仅当 第三列为字母A得时候才开始计算下方相加返回得索引)

逃兵 发表于 2021-1-27 09:23:28

import pandas as pd
a = {'num':,'level':['A','','B','','','A','','','','A','','B','','','','']}
df = pd.DataFrame(a)
for i in df.index:
      if df.level == 'A':
                temp = df.num
      elif df.level != 'A':
                temp+=df.num
      if temp<0:
                print(i)
                temp = 999999

lovecpy 发表于 2021-1-27 09:54:48

谢谢,非常棒!
页: [1]
查看完整版本: 求某数下方几个数字相加返回行索引怎么解决?