在写函数中附加文本[R]

时间:2014-08-16 14:39:26

标签: r append overwrite

我正在尝试在已存在的.txt文件中附加一行。但我的语法覆盖了这个文件:(

   fileConn <- file( "realization1.txt" )
      write(x =as.character(max(cumsum( rnorm( 10^7)))),
            file = fileConn,
            append = TRUE, sep = " ")


      write(x =as.character(max(cumsum( rnorm( 10^7)))),
            file = fileConn,
            append = TRUE, sep = " ")
   }

   close( fileConn )

有人对此有任何解决方案吗? 谢谢你的帮助!

3 个答案:

答案 0 :(得分:5)

我相信您的困难来自于未能使用正确的属性集打开文件。

如果您使用fileConn <- file( "realization1.txt" ,open="a")创建连接,那么所有连接都会按预期工作。基本上,据我所知,write(这是cat的包装器)无法附加,除非文件连接是用&#34;追加&#34;允许的。

答案 1 :(得分:1)

您还可以使用writeLines,这比write快20倍。如果要附加大字符串,这会产生很大的不同。

sink("outfile.txt", append = T)

x <- as.character(max(cumsum( rnorm( 10^7))))
writeLines(x)

sink()

答案 2 :(得分:0)

我只想使用命令 write.table

write.table(max(cumsum( rnorm( 10^7))),file="realization1.txt",append=TRUE,row.names=FALSE,col.names=FALSE)

write.table(max(cumsum( rnorm( 10^7))),file="realization1.txt",append=TRUE,row.names=FALSE,col.names=FALSE)

您可以在&#39; realizaion1.txt&#39;中找到2个值。文件