我一次又一次地遇到这个问题,而且我总是忘记了我最后的解决方案。是否在R base中实现了一个简单的增长函数,可以在data.tables
和data.frames
ddply
等中轻松使用?类似的东西:
x <- c(rnorm(10))
mygrowth <- function(x){
(x-c(NA,x)[-length(x)])/c(NA,x)[-length(x)]*100}
cbind(x,mygrowth(x))
避免了日志而不是otherwise great solution中的日志,可以直接在data.table
*中使用。我觉得这有点愚蠢,但我搜索了一下,发现在时间序列对象之外没有任何实现。
不知怎的,我无法想象这没有实现。或者我是以错误的方式去做,我应该在data.table
中使用时间序列对象,尽管我正在运行plm
命令?
*: P.S:
Data <- data.table(iris)
Data$growth <- Data[,mygrowth(Sepal.Length),by=Species][,V1]