在R中更改数据帧的名称

时间:2014-12-09 13:47:51

标签: r frames

我有以下问题。我有一些名为a,b,c,...,m的csv文件数据框。我想加载它们并将它们的名称更改为a1,a2,a3等等我怎样才能在R中执行此操作?

我尝试过以下操作,但它给了我一个错误:

  paste0("a",1)<-read.csv("a")

我还尝试了一种在加载后重命名文件的方法,但我不知道成功的方法。

2 个答案:

答案 0 :(得分:1)

如果要在全局环境中创建多个data.frame对象(我希望在列表中包含这些数据集),您可以使用列表中的lapply读取特定文件,更改名称列表元素到期望的对象名称,最后使用list2env。例如,假设我有3个文件a.csvb.csvc.csv,并且想要创建数据框对象a1a2a3那些相应的文件。

 files <- list.files(pattern='^[a-z]\\.csv')
 nm1 <- paste0('a', 1:3)
 lst1 <- setNames(lapply(files, function(x) read.csv(x)), nm1) 
 list2env(lst1, envir=.GlobalEnv)

答案 1 :(得分:0)

尝试

assign(paste0("a",1),read.csv("a"))

如果您不想为每个数据集添加一行,可以在矢量中列出csv个文件,例如list_files,然后执行:

for (i in 1:length(list_files)){
     assign(paste0("a",i),read.csv(list_files[i]))
}