vector {base}R Documentation



vector produces a vector of the given length and mode.

as.vector, a generic, attempts to coerce its argument into a vector of mode mode (the default is to coerce to whichever mode is most convenient). The attributes of x are removed.

is.vector returns TRUE if x is a vector (of mode logical, integer, real, complex, character, raw or list if not specified) and FALSE otherwise.


vector(mode = "logical", length = 0)
as.vector(x, mode = "any")
is.vector(x, mode = "any")


mode A character string giving an atomic mode or "list", or (not for vector) "any".
length A non-negative integer specifying the desired length.
x An object.


The atomic modes are "logical", "integer", "numeric", "complex", "character" and "raw".

is.vector returns FALSE if x has any attributes except names. (This is incompatible with S.) On the other hand, as.vector removes all attributes including names.

Note that factors are not vectors; is.vector returns FALSE and as.vector converts to character mode.


For vector, a vector of the given length and mode. Logical vector elements are initialized to FALSE, numeric vector elements to 0, character vector elements to "", raw vector elements to nul bytes and list elements to NULL.


as.vector and is.vector are quite distinct from the meaning of the formal class "vector" in the methods package, and hence as(x, "vector") and is(x, "vector").


Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.

See Also

c, is.numeric, is.list, etc.


df <- data.frame(x=1:3, y=5:7)
## Not run: 
## Error:
  as.vector(data.frame(x=1:3, y=5:7), mode="numeric")
## End(Not run)

x <- c(a = 1, b = 2)
all.equal(x, as.vector(x)) ## FALSE

###-- All the following are TRUE:
! is.vector(df)
! is.vector(df, mode="list")

is.vector(list(), mode="list")
is.vector(NULL,   mode="NULL")

[Package base version 2.1.0 Index]