Format character strings to use snake-style formatting, where word boundaries are defined by underscores (e.g. this_is_snake_case).

snakeCase(object, ...)

# S4 method for character
snakeCase(object, names = TRUE, prefix = TRUE,
  smart = TRUE)

snake(...)

Arguments

object

Object.

...

Additional arguments.

names

logical(1). Sanitize names.

prefix

logical(1). Prepend "X" character if necessary, when string begins with a syntactically invalid character, such as a number or non-alphanumeric. Note that names are always made syntactically valid when applicable with "X" prefix. See make.names() for details. Recommended by default.

smart

logical(1). Handle complicated special cases, such as mixed case acronyms, plus/minus, percentages, etc. Recommended by default.

Value

Modified object. Contains syntatically valid names. For objects supporting names(), the underlying data returns unchanged, except for character or vector class.

Note

Updated 2019-10-07.

Examples

data(syntactic, package = "acidtest") object <- syntactic$character snakeCase(object)
#> [1] "percent_gc" "x10um" "x5_3_bias" #> [4] "x5prime" "g2m_score" "hello_world" #> [7] "hello_world" "mazda_rx4" "n_count" #> [10] "rnai_clones" "tx2gene" "tx2_gene_id" #> [13] "worfdb_html_remap" "x123" NA