Writing Data From R to txt|csv Files: R Base Functions


Previously, we described R base functions (read.delim() and read.csv()) for importing txt and csv files into R.


In this article, you’ll learn how to export or write data from R to .txt (tab-separated values) and .csv (comma-separated values) file formats.


Writing Data From R to txt|csv Files: R Base Functions

Preleminary tasks

Launch RStudio as described here: Running RStudio and setting up your working directory

R base functions for writing data

The R base function write.table() can be used to export a data frame or a matrix to a file.

A simplified format is as follow:

write.table(x, file, append = FALSE, sep = " ", dec = ".",
            row.names = TRUE, col.names = TRUE)
  • x: a matrix or a data frame to be written.
  • file: a character specifying the name of the result file.
  • sep: the field separator string, e.g., sep = “\t” (for tab-separated value).
  • dec: the string to be used as decimal separator. Default is “.”
  • row.names: either a logical value indicating whether the row names of x are to be written along with x, or a character vector of row names to be written.
  • col.names: either a logical value indicating whether the column names of x are to be written along with x, or a character vector of column names to be written. If col.names = NA and row.names = TRUE a blank column name is added, which is the convention used for CSV files to be read by spreadsheets.

It’s also possible to write csv files using the functions write.csv() and write.csv2().

  • write.csv() uses “.” for the decimal point and a comma (“,”) for the separator.
  • write.csv2() uses a comma (“,”) for the decimal point and a semicolon (“;”) for the separator.

The syntax is as follow:

write.csv(my_data, file = "my_data.csv")
write.csv2(my_data, file = "my_data.csv")

Writing data to a file

The R code below exports the built-in R mtcars data set to a tab-separated ( sep = “\t”) file called mtcars.txt in the current working directory:

# Loading mtcars data
data("mtcars")
# Writing mtcars data
write.table(mtcars, file = "mtcars.txt", sep = "\t",
            row.names = TRUE, col.names = NA)

If you don’t want to write row names, use row.names = FALSE as follow:

write.table(mtcars, file = "mtcars.txt", sep = "\t",
            row.names = FALSE)

Summary


  • Write data from R to a txt file: write.table(my_data, file = “my_data.txt”, sep = “”)

  • Write data from R to a csv file: write.csv(my_data, file = “my_data.csv”)


Infos

This analysis has been performed using R (ver. 3.2.3).









Want to Learn More on R Programming and Data Science?

Follow us by Email

by FeedBurner

On Social Networks:


 Get involved :
  Click to follow us on and Google+ :   
  Comment this article by clicking on "Discussion" button (top-right position of this page)
  Sign up as a member and post news and articles on STHDA web site.
This page has been seen 8854 times