biginteger_friendly {friendlynumber} | R Documentation |
Translate a biginteger to a cardinal character vector
Description
Convert a <bignum_biginteger>
to a cardinal numeral (e.g. one, two, three).
A bignum::biginteger()
can store any integer (i.e. arbitrary precision),
which is useful for manipulating numbers too large to be represented (accurately)
in an <integer>
or <numeric>
vector.
biginteger_friendly_safe()
checks that all arguments are of the correct type
and raises an informative error otherwise. biginteger_friendly()
does not
perform input validation to maximize its speed.
Usage
biginteger_friendly(
numbers,
zero = "zero",
na = "missing",
nan = "not a number",
inf = "infinity",
negative = "negative ",
and = FALSE,
hyphenate = TRUE
)
biginteger_friendly_safe(
numbers,
zero = "zero",
na = "missing",
nan = "not a number",
inf = "infinity",
negative = "negative ",
and = FALSE,
hyphenate = TRUE
)
Arguments
numbers |
A |
zero |
What to call values of |
na |
What to call values of |
nan |
What to call values of |
inf |
What to call values of |
negative |
A prefix added to the translation of negative elements of |
and |
Whether to insert an |
hyphenate |
Whether to hyphenate numbers 21 through 99 (e.g. |
Value
A non-NA character vector of the same length as numbers
.
Examples
biginteger_friendly(bignum::biginteger(c(0, 1, 2, NA, 10001)))
# Specify the translations of "special" numbers
biginteger_friendly(bignum::biginteger(-10), negative = "minus ")
biginteger_friendly(bignum::biginteger(NA), na = "unknown")
# Modify the output formatting
biginteger_friendly(bignum::biginteger(9999))
biginteger_friendly(bignum::biginteger(9999), and = TRUE)
biginteger_friendly(bignum::biginteger(9999), hyphenate = FALSE)
# Translate large numbers
large <- bignum::biginteger(10L)^1001L
biginteger_friendly(large)
# Input validation
try(biginteger_friendly_safe(1L))