【发布时间】:2019-01-31 03:47:17
【问题描述】:
我有一个包含两列 a: [1,2,3,4,5]; b: [1,0.4,0.3,0.5,0.2] 的数据框。我怎样才能使列 c :
c[0] = 1
c[i] = c[i-1]*b[i]+a[i]*(1-b[i])
这样c:[1,1.6,2.58,3.29,4.658]
计算:
1 = 1
1*0.4+2*0.6 = 1.6
1.6*0.3+3*0.7 = 2.58
2.58*0.5+4*0.5 = 3.29
3.29*0.2+5*0.8 = 4.658
?
【问题讨论】:
-
请正确格式化您的问题
-
我没有看到预期的输出
-
增加了预期输出
-
for 循环可能吗?
-
我相信 for 循环是可行的,但我认为在 pandas 中必须有更好/更快的方法。
标签: python pandas performance numpy for-loop