【发布时间】:2018-09-18 16:50:43
【问题描述】:
我需要根据以下公式进行一些计算:
B1 = A1 + (1-A1) * B1
示例:
B1 = 0.2 + (1 - 0.2) * 0.4
= 0.52
C1 = 0.4 + (1 - 0.4) * 0.8
= 0.904
D1 = 0.8 + (1 - 0.8) * 0.5
= 0.952
其他行其他列同样的逻辑,一共11个。
数据框:
df
A B C D
0.2 0.4 0.8 0.5
0.4 0.5 0.6 0.2
0.8 0.1 0.5 0.4
0.3 0.4 0.1 0.8
预期输出:
A B C D
0.2 0.52 0.904 0.952
0.4 0.7 0.88 0.904
0.8 0.82 0.91 0.946
0.3 0.58 0.622 0.9244
我用下面的代码试了1次:
Df <- df[-ncol(df)] + ( 1 – df[-ncol(df)]) * df[-1]
我能够根据输出获得 B 列,但不适用于该列的其余部分。 请帮忙,谢谢。 BM。
【问题讨论】:
-
C和D列中的条目如何更新?你只给列B一个规则。 -
您定义了
B1,但随后您将新变量命名为C和D(其中任何一个都对应于您定义的公式)。你能解释清楚一点吗? -
您的问题不完整。请提供所有公式。
-
更新了问题-希望现在清楚。