假设我有一个向我返回输出列表的函数。如何立即调用特定的输出?我的原始函数很困难,必须将我的输出作为列表返回。有时我需要查看一个特殊的输出(其中3个或5个(共10个)。如何使用快捷方式代码快速完成操作,而不是重复几次以每次获得一个输出?
例如
x <- rnorm(1:5)
y <- rnorm(1:5)
myfun <- function(x,y){
mult <- sumf <- distfu <- list()
for(i in 1:5){
mult[[i]] <- x[[i]]*y[[i]]
sumf[[i]] <- x[[i]]+y[[i]]
distfu[[i]] <- x[[i]]-y[[i]]
}
out <- list()
out$mult <- mult
out$sumf <- sumf
out$distf <- distfu
return(out)
}
myres <- myfun(x,y)
如何致电myres$mult
,然后
myres$distf
只一次?
我尝试过:myres$[c(1,3)]
,但这是错误的。
请注意,此示例很简单,但是我的函数返回的输出多于10
。因此,如果我只需要看其中的5个,则需要重复此myfun$..
五次。我只是想知道是否有一种方法可以一次调用所有5
输出`。
答案 0 :(得分:0)
要调用列表的特定元素,您必须这样做:
myres[c(1,3)]
在您的代码中,$
后有一个错字myres
我希望这会对您有所帮助。