Skip to content

as_label() transforms R objects into a short, human-readable description. You can use labels to:

  • Display an object in a concise way, for example to labellise axes in a graphical plot.

  • Give default names to columns in a data frame. In this case, labelling is the first step before name repair.

See also as_name() for transforming symbols back to a string. Unlike as_label(), as_name() is a well defined operation that guarantees the roundtrip symbol -> string -> symbol.

In general, if you don't know for sure what kind of object you're dealing with (a call, a symbol, an unquoted constant), use as_label() and make no assumption about the resulting string. If you know you have a symbol and need the name of the object it refers to, use as_name(). For instance, use as_label() with objects captured with enquo() and as_name() with symbols captured with ensym().





An object.

Transformation to string

  • Quosures are squashed before being labelled.

  • Symbols are transformed to string with as_string().

  • Calls are abbreviated.

  • Numbers are represented as such.

  • Other constants are represented by their type, such as <dbl> or <data.frame>.

See also

as_name() for transforming symbols back to a string deterministically.


# as_label() is useful with quoted expressions:
#> [1] "foo(bar)"

#> [1] "foobar"

# It works with any R object. This is also useful for quoted
# arguments because the user might unquote constant objects:
#> [1] "<int>"

#> [1] "<fn>"