2014-12-02 22 views
0

我确信之前已经询问过这个问题,但没有找到答案。如果我想将10个单独的文件作为循环的一部分写入,我该如何使用索引或计数器来增加文件的名称。使用索引或计数器写入数据帧

a <- matrix(5, nrow=5, ncol=5) 

for(i in 1:10){ 
    a <- a + 1 
    write.csv(a, "a1.csv") 
} 

因此,我想延长这个代码写10个文件:a1.csv,a2.csv,a3.csv,等等。 我假设答案很简单,也许使用paste0,assign和[i]。没有运气让它解决!当然,如果没有一个更好的方法来解决这个问题没有for循环,我愿意提出建议!

回答

3

如图this answer,只要使用粘贴:

a <- matrix(5, nrow=5, ncol=5) 

for (i in 1:10) { 
    a <- a + 1 
    write.csv(a, paste("a",i,".csv",sep="")) 
} 
+2

'paste0( “A”,I,名为 “.csv ”)'是对于通常的情况时'月=“”'一个方便的替代;我更喜欢'sprintf(“a%d.csv”,i)'。 – 2014-12-03 00:54:10