For dealing with data, one may need “reading and writing data in R”. Therefore, it is important to discuss reading and writing data in R. It is also important to learn about reading and writing data files in the R environment.
Table of Contents
Reading and Writing Data in R Language
Reading Data in R
- read.table(), and read.csv(), for reading tabular data
- readLines() for reading lines of a text file
- source() for reading in R code files (inverse of dump)
- dget() for reading in R code files (inverse of dput)
- load() for reading in saved workspaces.
Writing Data to File in R
Following are a few functions for writing (exporting) data to files in R Language.
- write.table() in R, and write.csv() export data to a wider range of file formats including CSV and tab-delimited.
- writeLines() write text lines to a text-mode connection.
- dump() takes a vector of names of R objects and produces text representations of the objects on a file (or connection). A dump file can usually be sourced into another R session.
- dput() writes an ASCII text representation of an R object to a file (or connection) or uses one to recreate the object.
- save() writes an external representation of R objects to the specified file.
Reading Data Files with read.table()
The read.table() function in R is one of the most commonly used functions for reading data into R. It has a few important arguments.
- file, the name of a file, or a connection
- header, logical indicating if the file has a header line
- sep, a string indicating how the columns are separated
- colClasses, a character vector indicating the class of each column in the data set
- nrows, the number of rows in the dataset
- comment.char, a character string indicating the comment character
- skip, the number of lines to skip from the beginning
- stringsAsFactors, should character variables be coded as factors?
read.table() and read.csv() Examples
data <- read.table("foo.txt") data <- read.table("D:\\datafiles\\mydata.txt") data <- read.csv("D:\\datafiles\\mydata.csv")
R will automatically skip lines that begin with a symbol # and figure out how many rows there are (and how much memory needs to be allocated). R also figures out what type of variable is in each table column.
Writing Data Files with write.table() in R
A few important arguments are usually used in function write.table() in R.
- x, the object to be written, typically a data frame
- file, the name of the file that the data are to be written to
- sep, the field separator string
- col.names, 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
- row.names, 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
- na, the string to use for missing values in the data
write.table() and write.csv() Examples
The following are few examples about saving data in CSV or TXT files.
x <- data.frame(a = 5, b = 10, c = pi) write.table(x, file = "data.csv", sep = ",") write.table(x, "c:\\mydata.txt", sep = "\t") write.csv(x, file = "data.csv")