0

假设我们有一个f包含两列的数据框,x并且y所有值f$x都按升序排列。我们可以将其视为函数 y(x)。

我想对此类数据帧执行算术运算,例如数学意义上的函数。例如:

# f1 stores points of y1(x)
# f2 stores points of y2(x)
f3 <- 2*f1 + 3*f2
# now f3 stores points of y3(x) = 2*y1(x) + 3*y2(x)

x如果所有函数的数组都相同,则没有问题,但在我的情况下,它们可以表示具有不同点密度的不同范围

所以我需要在定义两个函数的区间内工作并进行插值(线性就足够了)以获得已知点之间的函数值。

是否有已经实施的软件包?

4

1 回答 1

2

zoo 库有一个简单的样条外推函数,它可能很有用。这将允许具有相似的范围。

library(zoo)
my.df <-matrix(c(1:5,NA),ncol=2,nrow=15)
na.spline(my.df)

          [,1]     [,2]
 [1,] 1.000000 4.000000
 [2,] 2.000000 5.000000
 [3,] 3.000000 2.767553
 [4,] 4.000000 1.000000
 [5,] 5.000000 2.000000
 [6,] 3.002711 3.000000
 [7,] 1.000000 4.000000
 [8,] 2.000000 5.000000
 [9,] 3.000000 2.997556
[10,] 4.000000 1.000000
[11,] 5.000000 2.000000
[12,] 3.017224 3.000000
[13,] 1.000000 4.000000
[14,] 2.000000 5.000000
[15,] 3.000000 5.932149
于 2012-01-17T14:40:25.640 回答