如何获得lapply输出从函数获得的2个对象

时间:2016-01-27 16:43:01

标签: r function lapply

我正试图在列表上提供一个函数。因为我的函数打算输出2个对象,所以我遇到了一个问题。对于列表中的每个项目,运行该函数仅输出第二个对象的结果。

这是一个非常简化的例子。

test<-function(x){
  a<-x+4
  b<-x/34
}
list<-c(3,4,5,6,6)
lapply(list,test)

# Outputs b:
[[1]]
[1] 0.08823529

[[2]]
[1] 0.1176471

[[3]]
[1] 0.1470588

[[4]]
[1] 0.1764706

[[5]]
[1] 0.1764706

如何让函数输出a和b?

1 个答案:

答案 0 :(得分:3)

该函数正在返回最后一行。 尝试:

test<-function(x){
a<-x+4
b<-x/34
return(c(a,b))
}
list<-c(3,4,5,6,6)
lapply(list,test)