假设我有一个数据X,一个n×m矩阵和一个n矢量时间,它被输入函数。在这个函数中我想创建函数
fun1 = approxfun(time, X[,1], rule=2)
fun2 = approxfun(time, X[,2], rule=2)
。 。
funm = approxfun(time, X[,m], rule=2)
理想情况下,如果有类似应用的东西可以应用近似,那将是很好但我无法申请工作。我已经研究了粘贴和解析但我被告知R的主要租户是为了避免解析。列表看起来很有希望,因为你可以创建一个函数列表,如果有一个像rbind或cbind这样的函数在矩阵上只对可能有诀窍的列表做了,但因为m是任意的,我有点卡在这里。我真的很抱歉,如果之前有过类似的问题,我就错过了。
答案 0 :(得分:5)
我不知道你在apply
出了什么问题,它应该可以正常工作
x <- matrix(rnorm(40), ncol=4)
time <- 1:10
lfun <- apply(x, 2, approxfun, x = time, rule = 2, method="linear")
# using those functions in plots
time2 <- seq(1, 10, length=100)
par(mfrow=c(2,2))
for(ii in 1:4){
plot(time, x[,ii])
lines(time2, lfun[[ii]](time2))
}