2016-05-31 161 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 
相關問題