我有相同长度的矢量列表,我正在寻找一些简单的方法来命名矢量的元素。我可以像这样使用for循环来实现:
myList <- list(c(1,2,3), c(4,5,6), c(7,8,9))
for (i in 1:3){ names(myList[[i]]) <- c("a", "b", "c") }
有没有办法做到这一点,例如用lapply或其他更优雅的方式?
我尝试使用此代码:
lapply(names(myList), function(i) names(myList[[i]])<- c("a", "b", "c"))
但是这个只给了我新的名单,而不是我当前名单的名字。
答案 0 :(得分:2)
我们可以尝试
lapply(myList, setNames, letters[1:3])
答案 1 :(得分:1)
你可以试试这个:
lapply(myList, function(x) { names(x) <- c('a', 'b', 'c'); x})