2014-08-29 4 views
-2

У меня есть набор из 30 файлов с общими корневыми именами (например, file-0001, file-0002 и т. Д.) С идентичными именами переменных (все файлы в том же каталоге), которые я хочу добавить к набору основных данных. Как мне это сделать?Как скопировать несколько файлов с помощью цикла?

ответ

-1

Составьте таблицу с именем всех ваших файлов и идентификатор, а затем написать что-то вроде этого:

#load the table with the name of the file & id 
list<-read.table("Table.txt",header=T) 

#define the range 
i=max(list$id)+1 

#make the loop 
while (i>0) 
i=i-1 

#select the name of your file from the table 
for(i in 1:length(list[,1])) {if (list[i,1]==id) {file<-list[i,2]} } 
file 

#set work directory 
setwd(your directory) 

#use your function 
result<-rbind(file) 

изменить алгоритм к своей работе!

5

Вы могли бы попробовать (если все файлы находятся в одной и той же рабочей директории)

files <- list.files(pattern="file-[0-9]+") 

res1 <- do.call(`rbind`,lapply(files, read.table, header=T)) 

Или

library(data.table) 
rbindlist(lapply(files, fread)) 
1

Используйте list.files, чтобы получить все файлы в определенной папке следующие по определенной схеме, например :

DF <- masterDF 
filePaths <- list.files(path="folderpath",pattern="file-[0-9]+",include.dirs=T) 
for(filePath in filePaths){ 
    currentDF <- read.table(filePath) 
    DF <- rbind(DF, currentDF) 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^