sjlabelled (version 1.0.16)

read_spss: Import data from other statistical software packages

Description

Import data from SPSS, SAS or Stata, including NA's, value and variable labels.

Usage

read_spss(path, atomic.to.fac = FALSE, tag.na = FALSE, enc = NULL,
  verbose = TRUE)

read_sas(path, path.cat = NULL, atomic.to.fac = FALSE, enc = NULL, verbose = TRUE)

read_stata(path, atomic.to.fac = FALSE, enc = NULL, verbose = TRUE)

Arguments

path

File path to the data file.

atomic.to.fac

Logical, if TRUE, categorical variables imported from the dataset (which are imported as atomic) will be converted to factors.

tag.na

Logical, if TRUE, missing values are imported as tagged_na values; else, missing values are converted to regular NA (default behaviour).

enc

The character encoding used for the file. This defaults to the encoding specified in the file, or UTF-8. Use this argument to override the default encoding stored in the file.

verbose

Logical, if TRUE, a progress bar is displayed that indicates the progress of converting the imported data.

path.cat

Optional, the file path to the SAS catalog file.

Value

A data frame containing the imported, labelled data. Retrieve value labels with get_labels and variable labels with get_label.

Details

These read-functions behave slightly differently from haven's read-functions:

  • The vectors in the returned data frame are of class atomic, not of class labelled. The labelled-class might cause issues with other packages.

  • When importing SPSS data, variables with user defined missings won't be read into labelled_spss objects, but imported as tagged NA values.

The atomic.to.fac option only converts those variables into factors that are of class atomic and which have value labels after import. Atomic vectors without value labels are considered as continuous and not converted to factors.

See Also

Vignette Labelled Data and the sjlabelled-Package.

Examples

Run this code
# NOT RUN {
# import SPSS data set. uses haven's read function
mydat <- read_spss("my_spss_data.sav")

# use haven's read function, convert atomic to factor
mydat <- read_spss("my_spss_data.sav", atomic.to.fac = TRUE)

# retrieve variable labels
mydat.var <- get_label(mydat)

# retrieve value labels
mydat.val <- get_labels(mydat)
# }
# NOT RUN {
# }

Run the code above in your browser using DataCamp Workspace