我的代码出错了。我想用一些拟合技术得到函数e(p)= p * L'(p)/ L(p)。
例如,如果L(p)= p ^ 4,则e(p)= 4,但是当我尝试使用splinefun()时,出现了错误的问题:
p <- 1:50/50
lp <- p^4
spl <- splinefun(p,lp)
dlp <- spl(p, deriv = 1)
p*dlp/lp
和结果
[1] 9.464102 3.816987 4.014530 3.998358 4.000225 3.999965 4.000006 3.999999
[9] 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000
[17] 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000
[25] 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000
[33] 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000
[41] 4.000000 4.000000 4.000000 4.000000 4.000000 4.000000 4.000001 3.999996
[49] 4.000012 3.999956 `
为什么会出现数字9.464102 3.816987?在所有情况下都可以获得4个吗?