我想创建多个数据框并根据年份分配它们。我看过其他帖子,但我无法为我的案例复制它。 例如,
a <- c(1,2,3,4)
b <- c('kk','km','ll','k3')
time <- (2001,2001,2002,2003)
df <- data.frame(a,b,time)
myvalues <- c(2001,2002,2003)
for (i in 1:3)
{ y[[i]]<- df[df$time=myvalues[[i]],}
我想在2001,2002和2003年创建三个数据帧y1,y2,y3。有关如何使用for循环的任何建议吗?
答案 0 :(得分:1)
为此assign()
功能。有关语法,请参阅?assign()
。
a <- c(1,2,3,4)
b <- c("kk","km","ll","k3")
time <- c(2001,2001,2002,2003)
df <- data.frame(a,b,time)
myvalues <- c(2001,2002,2003)
for (i in 1:3) {
assign(paste0("y",i), df[df$time==myvalues[i],])
}
有关实现此目的的更多方法,请参阅here。