2017-02-09 28 views
0

我有一个名为7的数据帧:如何在循环中调用不同的数据帧?

"muestra_suplentes_103" 
"muestra suplentes_108" 
"muestra_suplentes_109" 
"muestra_suplentes_113" 
"muestra_suplentes_114" 
"muestra_suplentes_138" 
"muestra suplentes_139" 

我也有一个名为向量:

cod_jer_groups= 103 108 109 113 114 138 139 

我需要为这个数据帧做到这一点:

muestra_suplentes_103$nrow=seq(from = 1, to = nrow(muestra_suplentes_103), by = 1) 
muestra_suplentes_108$nrow=seq(from = 1, to = nrow(muestra_suplentes_108), by = 1) 
muestra_suplentes_109$nrow=seq(from = 1, to = nrow(muestra_suplentes_109), by = 1) 
muestra_suplentes_113$nrow=seq(from = 1, to = nrow(muestra_suplentes_113), by = 1) 
muestra_suplentes_114$nrow=seq(from = 1, to = nrow(muestra_suplentes_114), by = 1) 
muestra_suplentes_138$nrow=seq(from = 1, to = nrow(muestra_suplentes_138), by = 1) 
muestra_suplentes_139$nrow=seq(from = 1, to = nrow(muestra_suplentes_139), by = 1) 

我装盘要做到这一点:

for(i in cod_jer_groups){ 
    muestra_suplentes$nrow= seq(from = 1, to = nrow(muestra_suplentes_i, by = 1)) 
    names(muestra_suplentes)[length(names(muestra_suplentes))]="nrow" 
    } 

我知道这是错误的电话“muestra_suplentes_i”,但我不知道该怎么做。

有没有什么情况?

谢谢!

+0

您可以使用'get()'或'set()'。但是,你应该考虑使用'list()'。 – BigDataScientist

回答

1

这是我会做的。

# put the data.frames into a named list, where names correspond to data.frame names 
myList <- mget(ls(pattern="^muestra_suplentes") 

# fill in the column values 
myList <- lapply(myList, function(i) within(i, rowNum <- seq_len(nrow(i)))) 

要了解更多关于为什么把data.frames为行可以是一个伟大的想法,看看格里高尔的答案this post

+0

非常感谢你! – Natuk