as_factor: Convert input to a factor.

Description Usage Arguments Examples

Description

The base function as.factor() is not a generic, but this variant is. Methods are provided for factors, character vectors, labelled vectors, and data frames. By default, when applied to a data frame, it only affects labelled columns.

Usage

1
2
3
4
5
6
## S3 method for class 'data.frame'
as_factor(x, ..., only_labelled = TRUE)

## S3 method for class 'haven_labelled'
as_factor(x, levels = c("default", "labels",
  "values", "both"), ordered = FALSE, ...)

Arguments

x

Object to coerce to a factor.

...

Other arguments passed down to method.

only_labelled

Only apply to labelled columns?

levels

How to create the levels of the generated factor:

  • "default": uses labels where available, otherwise the values. Labels are sorted by value.

  • "both": like "default", but pastes together the level and value

  • "label": use only the labels; unlabelled values become NA

  • "values: use only the values

ordered

If TRUE create an ordered (ordinal) factor, if FALSE (the default) create a regular (nominal) factor.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
x <- labelled(sample(5, 10, replace = TRUE), c(Bad = 1, Good = 5))

# Default method uses values where available
as_factor(x)
# You can also extract just the labels
as_factor(x, "labels")
# Or just the values
as_factor(x, "values")
# Or combine value and label
as_factor(x, "both")

tidyverse/haven documentation built on Jan. 11, 2019, 12:13 p.m.