R apply:使用函数中的元素索引

Lyn*_*akr 2 r apply

我有一个三维数据结构,反映特定经度,纬度和深度的数据.我想对这个数据应用一个函数.通常,假设我想找到深度平均值,我会做以下事情:

apply(MyData, MAR = c(1, 2), mean)
Run Code Online (Sandbox Code Playgroud)

这对我来说很有意义.我正在努力的是我想要应用一个取决于经度和纬度的函数.是否有一种方法可以元素索引传递给函数?

Jth*_*rpe 5

我想你想使用outer()并利用词法作用域,这样你就不必将myData传递给经度和格度调用的函数:

myData <- read.table(...) # or whatever

outer(seq.int(dim(mydata)[1]),
      seq.int(dim(mydata)[2]),
      function(longitude,lattitude){
        do things that depend on 
            myData[longitude,lattitude,]
      })
Run Code Online (Sandbox Code Playgroud)