Section 29 Vector: Explicit Coercion

The one exception to this is the special value NA (Not Available) used to signify a missing value
29.1 Explicit coercion: as.*
Example vector:
x <- c(0, 1, 5, T, NA, FALSE, TRUE)
y <- c(0, 1, 5, 'a', NA, FALSE, TRUE)
| Function | Concept | Example |
|---|---|---|
as.numeric |
numeric => numeric, character => NA, logical => 0/1 |
as.numeric(x); as.numeric(y) |
as.character |
numeric => character, character => character, logical => character |
as.character(x), as.character(y) |
as.logical |
numeric (non-zero) => TRUE, numeric (zero) -> FALSE, character (except TRUE, FALSE) => NA, logical => logical |
as.logical(x), as.logical(y) |
Character strings
c("T", "TRUE", "True", "true")are regarded asTRUECharacter strings
c("F", "FALSE", "False", "false")are regarded asFALSEAll others character strings are regarded as
NA.
29.2 Example: Explicit coercion
x <- 0:6
class(x)
as.numeric(x)
as.logical(x)
as.character(x)
x <- c(0, 1, 5, T, NA, FALSE, TRUE)
y <- c(0, 1, 5, 'a', NA, FALSE, TRUE)
as.numeric(x)
as.numeric(y)
as.character(x)
as.character(y)
as.logical(x)
as.logical(y)