Michael,
You example doesn't seem to work. Append isn't passed on to the write.table call. You will need to add a
Call$append<- appendto the function. And even then there will be a problem with the headers that are repeated when appending.
An easier solution is to use write.table directly (I am using Dutch/European csv format):
data <- data.frame(a=1:10, b=1, c=letters[1:10])write.table(data, file="test.csv", sep=";", dec=",", row.names=FALSE, col.names=TRUE) write.table(data, file="test.csv", sep=";", dec=",", row.names=FALSE, col.names=FALSE, append=TRUE)
When first openening a file connection and passing that to write.csv or write.table data is also appended. The problem with write.csv is that writing the column names can not be suppressed which will result in repeated column names:
con <- file("d:\\test2.csv", "wt")
write.csv2(data, file=con, row.names=FALSE)
write.csv2(data, file=con, row.names=FALSE)
close(con)
So one will still have to use write.table to avoid this:
con <- file("d:\\test2.csv", "wt")
write.table(data, file=con, sep=";", dec=",", row.names=FALSE, col.names=TRUE)
write.table(data, file=con, sep=";", dec=",", row.names=FALSE,
col.names=FALSE, append=TRUE)
close(con)Using a file connection is probably also more efficient when doing a large number of appends.
Jan Quoting "R. Michael Weylandt" <[email protected]>:
Touche -- perhaps we could make one though? write.csv.append <- function(..., append = TRUE) { Call <- match.call(expand.dots = TRUE) for (argname in c("col.names", "sep", "dec", "qmethod")) if (!is.null(Call[[argname]])) warning(gettextf("attempt to set '%s' ignored", argname), domain = NA) rn <- eval.parent(Call$row.names) Call$col.names <- if (is.logical(rn) && !rn) TRUE else NA Call$sep <- "," Call$dec <- "." Call$qmethod <- "double" Call[[1L]] <- as.name("write.table") eval.parent(Call) } write.csv.append(1:5,"test.csv", append = FALSE) write.csv.append(1:15, "test.csv") Output seems a little sloppy, but might work for the OP. Michael Weylandt On Wed, Sep 21, 2011 at 9:03 AM, Ivan Calandra <[email protected]wrote:I don't think there is an append argument to write.csv() (well, actually there is one, but set to FALSE). There is however one to write.table() Ivan Le 9/21/2011 14:54, R. Michael Weylandt <[email protected]> a écrit : The append argument of write.csv()?Michael On Sep 21, 2011, at 8:01 AM, "Ashish Kumar"<ashish.kumar@** esteeadvisors.com <[email protected]>> wrote: Hi,I wanted to write the data created using R on existing csv file. However everytime I use write.csv, it overwrites the values already there in the existing csv file. Any workaround on this. Thanks for your help Ashish Kumar Estee Advisors Pvt. Ltd. Email: [email protected] Cell: +91-9654072144 Direct: +91-124-4637-713 [[alternative HTML version deleted]] ______________________________**________________ [email protected] mailing list https://stat.ethz.ch/mailman/**listinfo/r-help<https://stat.ethz.ch/mailman/listinfo/r-help> PLEASE do read the posting guide http://www.R-project.org/** posting-guide.html <http://www.R-project.org/posting-guide.html> and provide commented, minimal, self-contained, reproducible code.______________________________**________________ [email protected] mailing list https://stat.ethz.ch/mailman/**listinfo/r-help<https://stat.ethz.ch/mailman/listinfo/r-help> PLEASE do read the posting guide http://www.R-project.org/** posting-guide.html <http://www.R-project.org/posting-guide.html> and provide commented, minimal, self-contained, reproducible code.-- Ivan CALANDRA PhD Student University of Hamburg Biozentrum Grindel und Zoologisches Museum Dept. Mammalogy Martin-Luther-King-Platz 3 D-20146 Hamburg, GERMANY +49(0)40 42838 6231 [email protected] ********** http://www.for771.uni-bonn.de http://webapp5.rrz.uni-**hamburg.de/mammals/eng/1525_8_**1.php<http://webapp5.rrz.uni-hamburg.de/mammals/eng/1525_8_1.php> ______________________________**________________ [email protected] mailing list https://stat.ethz.ch/mailman/**listinfo/r-help<https://stat.ethz.ch/mailman/listinfo/r-help> PLEASE do read the posting guide http://www.R-project.org/** posting-guide.html <http://www.R-project.org/posting-guide.html> and provide commented, minimal, self-contained, reproducible code.[[alternative HTML version deleted]]
______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.

