下面是我将使用的示例数据框架。difference列表示时间上的价格差异。例如,2001年的价格预测为6 + 3 = 9
| 时间|差|价格|
| - ------|- ------|- ------|
| 二○ ○ ○年|不适用|六个|
| 二○ ○一年|三个|不适用|
| 二○ ○二年|四个|不适用|
| 二○ ○三年|六个|不适用|
| 二○ ○四年|-8个|不适用|
现在,我正在使用的代码如下,它是不工作的,因为如果我循环它,它会覆盖以前的数据时,即使我这样做。
Data <- Data %>%
mutate(new_price = difference + lag(new_price))
我正在寻找的一段代码,可以完成在一次点击列表,这样的预期结果将是
| 时间|差|价格|
| - ------|- ------|- ------|
| 二○ ○ ○年|不适用|六个|
| 二○ ○一年|三个|九|
| 二○ ○二年|四个|十三|
| 二○ ○三年|六个|十九|
| 二○ ○四年|-8个|十一|
任何解决方案都是受欢迎的,非常感谢你们。
2条答案
按热度按时间e3bfsja21#
请试试这个
xmd2e60i2#
另一种方法是使用
purrr
中的accumulate
,提供数据向量(diff
,没有第一个元素)、函数+
(在本例中)和初始值(price
中的第一个值)。