R 将函数应用于指定范围;变化率

R 将函数应用于指定范围;变化率,r,apply,R,Apply,可能重复: 我在R中编写了一个变化率函数,定义如下: rateChange <- function(x) ((last(x)-first(x))/first(x))*100 rateChange这很接近,但数学(结果)并不完全相同: roc <- c(18.89, 18.93, 18.55, 18.77, 18.87, 18.91) sapply(seq_along(roc)[-1], function(i) 100*(roc[i] - roc[i-1])/roc[i-1])

可能重复:

我在R中编写了一个变化率函数,定义如下:

rateChange <- function(x) ((last(x)-first(x))/first(x))*100

rateChange这很接近,但数学(结果)并不完全相同:

 roc <- c(18.89, 18.93, 18.55, 18.77, 18.87, 18.91)
 sapply(seq_along(roc)[-1], function(i) 100*(roc[i] - roc[i-1])/roc[i-1])

roc这很接近,但数学(结果)并不完全相同:

 roc <- c(18.89, 18.93, 18.55, 18.77, 18.87, 18.91)
 sapply(seq_along(roc)[-1], function(i) 100*(roc[i] - roc[i-1])/roc[i-1])

roc我建议使用
TTR::roc

library(TTR)
roc <- c(18.89, 18.93, 18.55, 18.77, 18.87, 18.91)
ROC(roc, type="discrete")*100
# [1]         NA  0.2117522 -2.0073957  1.1859838  0.5327651  0.2119767
库(TTR)

roc我建议使用
TTR::roc

library(TTR)
roc <- c(18.89, 18.93, 18.55, 18.77, 18.87, 18.91)
ROC(roc, type="discrete")*100
# [1]         NA  0.2117522 -2.0073957  1.1859838  0.5327651  0.2119767
库(TTR)

我投票决定关闭,但我现在认为这个决定是错误的。我投票决定关闭,但我现在认为这个决定是错误的。谢谢!这就是解决方案。@user1499626-您的意思是“这就是解决方案”。在R中,做事几乎总是有多种方法。谢谢!这就是解决方案。@user1499626-您的意思是“这就是解决方案”。在R中,几乎总是有不止一种方法来做事情。