Одним из способов является чтение входного файла по одной строке за раз и добавление строки в правильный выходной файл на основе первых x символов строки:
con <- file('yourInputFile', 'r')
while (length(input <- readLines(con, n=1) > 0){
outputfile <- paste(substr(input, 1, 5), ".csv", sep="" )
### assuming first 5 characters are new file name
outfile <- file(outputfile, 'a')
writeLines(output, con=outfile)
close(outfile)
}
Преимущество этого подхода в том, что он работает, даже если yourInputFile слишком велик для чтения в память. Недостатком является то, что этот подход медленный, так как он делает много открытий / закрытий файлов.