Table of Contents
Exporting data from R to a CSV file is a common task, and the write.csv() function in R makes it easy. This function can be used to export data frames, matrices, and even datasets. To export a data frame to a CSV file, you can use the write.csv() function in R. This function takes two arguments, the data frame name and the file name. To export the data frame df to a CSV file named df.csv, you can use the following code: write.csv(df, “df.csv”). This will save the data frame to a CSV file in the current working directory.
Suppose we have the following data frame in R:
#create data frame df <- data.frame(team=c('A', 'B', 'C', 'D', 'E'), points=c(78, 85, 93, 90, 91), assists=c(12, 20, 23, 8, 14)) #view data frame df team points assists 1 A 78 12 2 B 85 20 3 C 93 23 4 D 90 8 5 E 91 14
There are three common ways to export this data frame to a CSV file in R:
1. Use write.csv from base R
If your data frame is reasonably small, you can just use the write.csv function from base R to export it to a CSV file.
When using this method, be sure to specify row.names=FALSE if you don’t want R to export the row names to the CSV file.
write.csv(df, "C:\Users\Bob\Desktop\data.csv", row.names=FALSE)
2. Use write_csv from reader package
An even faster way to export a data frame to a CSV file is with the write_csv function from the reader package. This is about 2x faster than write.csv and it never writes the row names from the data frame to a CSV file.
library(readr) write_csv(df, "C:\Users\Bob\Desktop\data.csv")
3. Use fwrite from data.table package
Yet a faster way (and a recommended method for large datasets) to export a data frame to a CSV file is with the fwrite function from the data.table package. This function is about 2x faster than the write_csv method.
library(data.table) fwrite(df, "C:\Users\Bob\Desktop\data.csv")
Note that in each example we used double backslashes (\) in the file path to avoid the following common error:
Error: 'U' used without hex digits in character string starting ""C:U"
The Output
Each of the three methods above produce an identical CSV file. If we open this file with Excel, here’s what it looks like:
And if we open the CSV file with a text reader like Notepad, here’s what it looks like:
Related: How to Import CSV Files into R