我有包含12个data.frame的列表。每个数据帧是从一月到十二月。这就是我在R Studio中名为Sheet_list的列表的样子。
所以我的问题是如何在适当的月份在每个这些表中添加附加列? Е.g1月1日,等等。
有人可以帮我吗?
答案 0 :(得分:2)
可能:
library(purrr)
library(dplyr)
l <- list(january=data.frame(id=c(1,2)),
february=data.frame(id=c(3,4,5)))
l <- purrr::imap(l,function(x,y) mutate(x,month=y))
l
#$`january`
# id month
#1 1 january
#2 2 january
#
#$february
# id month
#1 3 february
#2 4 february
#3 5 february
答案 1 :(得分:1)
如果您不想使用任何外部软件包,请尝试:
l <- list(january=data.frame(id=c(1,2)),
february=data.frame(id=c(3,4,5)))
lapply(names(l), function(x){
l[[x]]$month <<- x
return(NULL)
})
l
# $`january`
# id month
# 1 1 january
# 2 2 january
#
# $february
# id month
# 1 3 february
# 2 4 february
# 3 5 february