为了账号安全,请及时绑定邮箱和手机立即绑定

DataFrame如何进行计算(请看附图)

DataFrame如何进行计算(请看附图)

芜湖不芜 2022-06-14 10:10:14
如您所见,D 列下的计算遵循特定模式,即先验值 * (1+the rate%/365)所以在单元格 D2 中你有 100*(1+8%/365) D3 将是 100.021918*(1+8.06%/365)有没有一种简单的方法可以在 python 中做到这一点,因为我不想为此目的使用 excel....而且我的日常数据可以追溯到 30 年前。
查看完整描述

2 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

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为更有意义的东西。


查看完整回答
反对 回复 2022-06-14
?
神不在的星期二

TA贡献1963条经验 获得超6个赞

我不知道有任何“DataFrame 友好”的方法可以做到这一点,但是您可以使用 for 循环简单地迭代具有索引的行。

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


查看完整回答
反对 回复 2022-06-14
  • 2 回答
  • 0 关注
  • 88 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信