Free Access Week - Data Engineering + BI
Data Engineering and BI courses are free this week!
Free Access Week - Jun 2-8

bruceR (version 0.8.5)

export: Export data to a file (TXT, CSV, Excel, SPSS, Stata, ...) or clipboard.

Description

Export data to a file, with format automatically judged from file extension. This function is inspired by rio::export() and has several modifications. Its purpose is to avoid using lots of write_xxx() functions in your code and to provide one tidy function for data export.

It supports many file formats and uses corresponding R functions:

Usage

export(
  x,
  file,
  sheet = NULL,
  encoding = NULL,
  header = "auto",
  overwrite = TRUE
)

Arguments

x

Any R object, usually a data frame (data.frame, data.table, tbl_df). Multiple R objects should be included in a named list (see examples).

If you want to save R objects other than a data frame (e.g., model results), you'd better specify file with extensions .rda, .rdata, or .Rdata.

file

File name (with extension). If unspecified, then data will be exported to clipboard.

sheet

[Only for Excel] Excel sheet name(s). Default is Sheet1, Sheet2, ... You may specify multiple sheet names in a character vector c() with the same length as x (see examples).

encoding

File encoding. Default is NULL. Alternatives can be "UTF-8", "GBK", "CP936", etc.

If you find messy code for Chinese text in the exported data (often in CSV when opened with Excel), it is usually effective to set encoding="GBK" or encoding="CP936".

header

Does the first row contain column names (TRUE or FALSE)? Default is "auto".

overwrite

Overwrite the existing file (if any)? Default is TRUE.

Value

No return value.

See Also

import, print_table

Examples

Run this code
# NOT RUN {
  export(airquality)  # paste to clipboard
  export(airquality, file="mydata.csv")
  export(airquality, file="mydata.sav")

  export(list(airquality, npk), file="mydata.xlsx")  # Sheet1, Sheet2
  export(list(air=airquality, npk=npk), file="mydata.xlsx")  # a named list
  export(list(airquality, npk), sheet=c("air", "npk"), file="mydata.xlsx")

  export(list(a=1, b=npk, c="character"), file="abc.Rdata")  # .rda, .rdata
  d=import("abc.Rdata")  # load only the first object and rename it to `d`
  load("abc.Rdata")  # load all objects with original names to environment

  export(lm(yield ~ N*P*K, data=npk), file="lm_npk.Rdata")
  model=import("lm_npk.Rdata")
  load("lm_npk.Rdata")  # because x is unnamed, the object has a name "List1"

  export(list(m1=lm(yield ~ N*P*K, data=npk)), file="lm_npk.Rdata")
  model=import("lm_npk.Rdata")
  load("lm_npk.Rdata")  # because x is named, the object has a name "m1"
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab