| write_delim {readr} | R Documentation |
This is about twice as fast as write.csv(), and never
writes row names. output_column() is a generic method used to coerce
columns to suitable output.
write_delim(x, path, delim = " ", na = "NA", append = FALSE, col_names = !append) write_csv(x, path, na = "NA", append = FALSE, col_names = !append) write_excel_csv(x, path, na = "NA", append = FALSE, col_names = !append) write_tsv(x, path, na = "NA", append = FALSE, col_names = !append)
x |
A data frame to write to disk |
path |
Path or connection to write to. |
delim |
Delimiter used to separate values. Defaults to |
na |
String used for missing values. Defaults to NA. Missing values
will never be quoted; strings with the same value as |
append |
If |
col_names |
Write columns names at the top of the file? |
write_*() returns the input x invisibly.
Factors are coerced to character. Doubles are formatted using the grisu3 algorithm. POSIXct's are formatted as ISO8601.
All columns are encoded as UTF-8. write_excel_csv() also includes a
UTF-8 Byte order mark
which indicates to Excel the csv is UTF-8 encoded.
Values are only quoted if needed: if they contain a comma, quote or newline.
Florian Loitsch, Printing Floating-Point Numbers Quickly and Accurately with Integers, PLDI '10, http://www.cs.tufts.edu/~nr/cs257/archive/florian-loitsch/printf.pdf
tmp <- tempfile()
write_csv(mtcars, tmp)
head(read_csv(tmp))
# format_* is useful for testing and reprexes
cat(format_csv(head(mtcars)))
cat(format_tsv(head(mtcars)))
cat(format_delim(head(mtcars), ";"))
df <- data.frame(x = c(1, 2, NA))
format_csv(df, na = ".")
# Quotes are automatically as needed
df <- data.frame(x = c("a", '"', ",", "\n"))
cat(format_csv(df))
# A output connection will be automatically created for output filenames
# with appropriate extensions.
dir <- tempdir()
write_tsv(mtcars, file.path(dir, "mtcars.tsv.gz"))
write_tsv(mtcars, file.path(dir, "mtcars.tsv.bz2"))
write_tsv(mtcars, file.path(dir, "mtcars.tsv.xz"))