Numeric testing and coercion {admisc} | R Documentation |

## Numeric vectors

### Description

Coerces objects to class "numeric", and checks if an object is numeric.

### Usage

```
asNumeric(x, ...)
possibleNumeric(x, each = FALSE)
wholeNumeric(x, each = FALSE)
```

### Arguments

`x` |
A vector of values |

`each` |
Logical, return the result for each value in the vector |

`...` |
Other arguments to be passed for class based methods |

### Details

Unlike the function ** as.numeric()** from the

**base**package, the function

**coerces to numeric without a warning if any values are not numeric. All such values are considered NA missing.**

`asNumeric()`

This is a generic function, with specific class methods for factors and objects
of class “declared”. The usual way of coercing factors to numeric is
meaningless, converting the inner storage numbers. The class method of this
particular function coerces the levels to numeric, via the default activated
argument `levels`

.

For objects of class “declared”, a similar argument called `na_values`

is by default activated to coerce the declared missing values to numeric.

The function ** possibleNumeric()** tests if the values in a vector are
possibly numeric, irrespective of their storing as character or numbers. In the
case of factors, it tests its levels representation.

Function ** wholeNumeric()** tests if numbers in a vector are whole
(round) numbers. Whole numbers are different from “integer” numbers (which
have special memory representation), and consequently the function

**tests something different, how numbers are stored in memory (see the description of function**

`is.integer`

()**for more details).**

`double()`

The function

### Author(s)

Adrian Dusa

### See Also

### Examples

```
x <- c("-.1", " 2.7 ", "B")
asNumeric(x) # no warning
f <- factor(c(3, 2, "a"))
asNumeric(f)
asNumeric(f, levels = FALSE)
possibleNumeric(x) # FALSE
possibleNumeric(x, each = TRUE) # TRUE TRUE FALSE
possibleNumeric(c("1", 2, 3)) # TRUE
is.integer(1) # FALSE
# Signaling an integer in R
is.integer(1L) # TRUE
wholeNumeric(1) # TRUE
wholeNumeric(c(1, 1.1), each = TRUE) # TRUE FALSE
```

*admisc*version 0.35 Index]