2016-05-31 163 views
1

我想用同一元素中的第二个值替换每个列表元素中的第一个值。更新每个列表元素中的第一个值R

比如我想一个函数来转换成善堂LST2

lst<-list(c(0:4),c(5:9)) 
lst 

lst2<-list(c(1, c(1:4)),c(6,c(6:9))) 
lst2 

我知道我能做到

lst[[1]][1]=lst[[1]][2] 
lst[[2]][1]=lst[[2]][2] 

但我想一个函数来遍历所有的列表元素。我曾尝试过各种东西(全部落选)与lapply如:

lapply(list, function(x) x[1]=x[2]) 

回答

4

我们可以使用lapply地遍历list,我们需要如果我们使用匿名函数调用返回x

lstN <- lapply(lst, function(x) {x[1] <- x[2] 
         x}) 
identical(lst2, lstN) 
#[1] TRUE 
相关问题