Панды cumsum с темпом роста - PullRequest
       6

Панды cumsum с темпом роста

0 голосов
/ 04 декабря 2018

Я хочу рассчитать сумму, но также добавить скорость роста к каждой сумме.

Скорость роста = 0,1

Каждая строка для столбца Cumsum with Growth будетдобавить компонент роста из предыдущих строк cumsum:
Row 2 = (1+2) + (1*0.1)
Row 3 = (3.1 + 1) + (3.1 * 0.1)
Row 4 = (4.41 + 5) + (4.41* 0.1)

Как я могу выполнить это, не повторяя каждую строку в Pandas?

Ответы [ 2 ]

0 голосов
/ 04 декабря 2018

Вы можете попробовать это:

col = [df.val.values[0]]
for i in range(1, len(df.index)):
    col.append(col[i-1]+df.val.values[i]+col[i-1]*0.1)
df['cumsumwithgrowth'] = col

df

   val  cumsumwithgrowth
0    1             1.000
1    2             3.100
2    1             4.410
3    5             9.851
0 голосов
/ 04 декабря 2018

Я бы создал другой столбец с именем, CumSumwithGrowth

df['cum_sum'] = df.val1.cumsum()
df['CumSumWithGrowth'] = .10*df[‘cum_sum’] + df[‘cum_sum’]
...