这些是为了分析不同物种之间的相互作用而编写的代码。
在这段代码中,我尝试从每个分析中获取单独的输出均未成功。
lapply(data.list, function(x) {
grp <- factor(x$species)
window <- ripras(x$utmX, x$utmY)
pp.grp <- ppp(x$utmX, x$utmY, window=window, marks=grp)
split.grp <- split(pp.grp)
L <- (alltypes(pp.grp, "L"))
LE <- alltypes(pp.grp, Lcross, nsim = 100, envelope = TRUE)
return("L", "LE")
})
plot(L[1])
所以我的问题是如何从一个操作中获得多个输出?
非常感谢您!
答案 0 :(得分:0)
处理R函数中多个输出的最常见方法是 结果在列表中并返回。希望这可以启发您:
f <- function(x){
L <- x
LE <- matrix(x, 2, 2)
rslt <- list(L = L, LE = LE)
return(rslt)
}
y <- f(7)
现在y是一个包含两个元素的列表:L和LE
y
#> $L
#> [1] 7
#>
#> $LE
#> [,1] [,2]
#> [1,] 7 7
#> [2,] 7 7
使用$
获取命名元素(在本例中为L
–与y[[1]]
相同):
y$L
#> [1] 7
由reprex package(v0.2.1)于2019-03-16创建