logical {base} | R Documentation |
Logical Vectors
Description
Create or test for objects of type "logical"
, and the basic
logical constants.
Usage
TRUE
FALSE
T; F
logical(length = 0)
as.logical(x, ...)
is.logical(x)
Arguments
length |
a non-negative integer specifying the desired length. Double values will be coerced to integer: supplying an argument of length other than one is an error. |
x |
object to be coerced or tested. |
... |
further arguments passed to or from other methods. |
Details
TRUE
and FALSE
are reserved words denoting logical
constants in the R language, whereas T
and F
are global
variables whose initial values set to these. All four are
logical(1)
vectors.
as.logical
is a generic function. Methods should return an object
of type "logical"
.
Logical vectors are coerced to integer vectors in contexts where a
numerical value is required, with TRUE
being mapped to
1L
, FALSE
to 0L
and NA
to NA_integer_
.
Value
logical
creates a logical vector of the specified length.
Each element of the vector is equal to FALSE
.
as.logical
attempts to coerce its argument to be of logical
type. In numeric and complex vectors, zeros are FALSE
and
non-zero values are TRUE
.
For factor
s, this uses the levels
(labels). Like as.vector
it strips attributes including
names. Character strings c("T", "TRUE", "True", "true")
are
regarded as true, c("F", "FALSE", "False", "false")
as false,
and all others as NA
.
is.logical
returns TRUE
or FALSE
depending on
whether its argument is of logical type or not.
References
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
See Also
NA
, the other logical constant.
Logical operators are documented in Logic
.
Examples
## non-zero values are TRUE
as.logical(c(pi,0))
if (length(letters)) cat("26 is TRUE\n")
## logical interpretation of particular strings
charvec <- c("FALSE", "F", "False", "false", "fAlse", "0",
"TRUE", "T", "True", "true", "tRue", "1")
as.logical(charvec)
## factors are converted via their levels, so string conversion is used
as.logical(factor(charvec))
as.logical(factor(c(0,1))) # "0" and "1" give NA