DataFrame如何执行计算(请参见所附照片)

时间:2019-10-03 16:27:51

标签: python pandas dataframe

index calculation

您可以看到D列下的计算遵循特定模式 即先前值*(1+比率%/ 365)

因此在单元格D2中您有100 *(1 + 8%/ 365) D3为100.021918 *(1 + 8.06%/ 365)

是否有一种简单的方法可以在python中完成此操作,因为我不想为此目的使用excel ....而且我每天都有30年的数据。

2 个答案:

答案 0 :(得分:0)

我不知道要使用哪种“ DataFrame友好”方法,但是您可以使用for循环使用索引简单地遍历行。

for i in range(1, num_rows):
    df[i]["value"] = df[i-1]["value"] * (1 + df[i]["rate"]/365)

答案 1 :(得分:0)

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:]})

可能应该将cell_d重命名为更有意义的名称。