function - 如何从单个操作中获得多个输出?
问题描述
这些是为分析不同物种之间的相互作用而编写的代码。
在这段代码中,我试图从每个分析中获取单独的输出,但没有成功。
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])
所以我的问题是如何从单个操作中获得多个输出?
非常感谢您!
解决方案
在 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 包(v0.2.1)于 2019 年 3 月 16 日创建
推荐阅读
- java - 自动将日期存入数据库
- java - 如何将以下 JAVA 加密重现为等效的 NODEJS(使用 node-rsa 或加密模块)?
- java - 抛出 org.apache.shiro.session.UnknownSessionException: 注销后没有带有 id 的会话并将请求重定向到登录页面
- json - 在复制数据中将数据从源丢失到接收器
- postgresql - 有没有办法在 TypeORM 的选择部分绑定参数?
- android - 如何在textview中的其他文本上显示$符号
- python-3.x - 完成所有操作后出现关键错误:“po5”
- python - 即使没有必要,我是否应该始终使用“else:”?
- android - 如何知道哪个字体正在使用 Android 应用程序?
- c# - 基于可选参数的访问控制器