You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas 带初始值的百分比列累计求和:实现复利累计结果计算

解决方案

你需要实现的是复利式累计增长计算,每期数值基于上一期结果计算,因此使用累计乘积方法cumprod即可达到预期效果:

import pandas as pd

# 替换为你实际的DataFrame
df = pd.DataFrame({
    'timestamp': ['XXX', 'YYY', 'ZZZ'],
    'percentage': [5, -2, 3]
})

# 自定义初始值
initial_value = 100

# 计算累计值
df['cum_value'] = (1 + df['percentage'] / 100).cumprod() * initial_value

执行后输出的cum_value列对应结果:

0    105.000
1    102.900
2    105.987

如果你的percentage字段为千分比/基点单位,对应调整/100为/1000//10000即可。如果需要将初始值作为首行插入结果中,可追加以下代码:

df = pd.concat([
    pd.DataFrame({'timestamp': ['init'], 'percentage': [0], 'cum_value': [initial_value]}),
    df
], ignore_index=True)

内容的提问来源于stack exchange,提问作者koyamashinji

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 04:06:04