【发布时间】:2018-02-04 11:30:46
【问题描述】:
我有一些高维数组,想对它们应用一些函数。问题是我不能告诉 apply()(或类似的 apply 系列)传递函数的对象不在函数的第一个参数中。
这里是愚蠢的例子:
data <- c(1,2,3,4,5)
myarray <- array(data,dim=c(5,5,2,2),dimnames=list(NULL,
paste("col",1:5,sep=""),
paste("matrix",1:2,sep=""),
paste("slice",1:2,sep="")))
现在,想象一个具有这种结构的函数:
function(arg1,arg2,arg3,data,arg4)
如果我想让 apply 将函数传递给对象“myarray”,我需要指定位于哪个参数(“data”)上。我试过了,但没有结果:
apply(myarray,c(3,4),function,arg1,arg2,arg3,arg4)
提前致谢!
【问题讨论】: