[R] New behavior of 'write.csv' append argument?

Peter Ehlers ehlers at ucalgary.ca
Tue Jun 1 12:26:19 CEST 2010

On 2010-05-31 18:33, Steven Worthington wrote:
> Dear R users,
> I have recently begun to reuse some functions I made several months ago. The
> scripts write to a .csv file using the 'write.csv' function with the append
> option set to TRUE. This used to work fine, albeit with the warning
> "appending column names to file". I upgraded to R version 2.11.0 on OSX
> 10.5.8 and 'write.csv' will no longer append any files - I get the warning
> "attempt to set 'append' ignored". The exact same object will append when
> using 'write.table' without issue. Here's a minimal example. Has there been
> a change in 'write.csv'?
> # --------------------------------
> x<- rnorm(10, 5)
> y<- rnorm(10, 10)
> z<- rnorm(10, 15)
> dat<- data.frame(x, y, z)
> names(dat)<- c("first", "second", "third")
> write.csv(dat, file="dat.csv", append=TRUE)
> write.table(dat, file="dat2.csv", sep=",", row.names=FALSE, append=TRUE)
> # --------------------------------

It's always a good idea to check the NEWS file. Here is a quote:

   "write.csv[2] no longer allow 'append' to be changed: as ever,
    direct calls to write.table() give more flexibility as well as
    more room for error."

So use write.table.

   -Peter Ehlers

More information about the R-help mailing list