如您所見,D 列下的計(jì)算遵循特定模式,即先驗(yàn)值 * (1+the rate%/365)所以在單元格 D2 中你有 100*(1+8%/365) D3 將是 100.021918*(1+8.06%/365)有沒有一種簡單的方法可以在 python 中做到這一點(diǎn),因?yàn)槲也幌霝榇四康氖褂?excel....而且我的日常數(shù)據(jù)可以追溯到 30 年前。
2 回答

郎朗坤
TA貢獻(xiàn)1921條經(jīng)驗(yàn) 獲得超9個(gè)贊
cell_d = [100]
rates = [0.08, 0.0806, 0.0812, 0.0813, 0.08]
for i, rate in enumerate(rates):
cell_d.append(cell_d[i] * (1 + rate/365))
pd.DataFrame({'rates': rates, 'cell_d': cell_d[1:]})
可能應(yīng)該重命名cell_d為更有意義的東西。

神不在的星期二
TA貢獻(xiàn)1963條經(jīng)驗(yàn) 獲得超6個(gè)贊
我不知道有任何“DataFrame 友好”的方法可以做到這一點(diǎn),但是您可以使用 for 循環(huán)簡單地迭代具有索引的行。
for i in range(1, num_rows): df[i]["value"] = df[i-1]["value"] * (1 + df[i]["rate"]/365)
添加回答
舉報(bào)
0/150
提交
取消