我有一个第一个差分记录系列,需要转换回原始级别单位。如何在R中执行此操作?
下面是我的数据系列,它们各自的转换和尝试的代码:
原始系列:
o <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
记录系列:
l <- c(0.693, 1.099, 1.386, 1.609, 1.792, 1.946, 2.079, 2.197, 2.303)
第一个差异记录系列:
dl <- c(-0.693, -1.792, -2.485, -2.996, -3.401, -3.738, -4.025, -4.277, -4.500)
diffinv(dl, differences = 1)
所需的输出:
[1] 1 2 3 4 5 6 7 8 9 10
尝试输入的代码:
x <- c(1:10)
lx <- log(x)
dlx <-diff(lx)
diffinv(dlx, differences = 1)
当前输出:
[1] 0.0000000 0.6931472 1.0986123 1.3862944 1.6094379 1.7917595 1.9459101 [8] 2.0794415 2.1972246 2.3025851
答案 0 :(得分:1)
只需要记住您的定义即可。 e ^ (ln (x)) = x
,因此
exp(diffinv(dlx, differences = 1))
[1] 1 2 3 4 5 6 7 8 9 10