Tests whether an object is a vector or not

Description

The is.vector function returns a FALSE value in some cases where intuitively one might expect a TRUE value to be returned. For example, is.vector(z) returns FALSE for each of the following:

i

z <- 1:3;names(z) <- 1:3

ii

z <- matrix(1:3, nrow=1)

iii

z <- matrix(1:3, ncol=1)

These results are not necessarily incorrect, they are just one interpretion of the definition of a vector. Contrarily, the isNumericAtomicVector(z) function returns TRUE for each of the above examples. Thus, isNumericAtomicVector expands the basic definition of a vector to allow matrices containing a single row or column and named vectors. Also, unlike is.vector, isNumericAtomicVector returns FALSE for objects of class list.

Usage

1

Arguments

x

an object of arbitrary class.

Value

a vector of character strings containing the result. The length of this vector is equal to length(x).

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
## cases where isNumericAtomicVector returns 
## TRUE 
z <- 1:3;names(z) <- letters[1:3]
isNumericAtomicVector(z)
isNumericAtomicVector(matrix(1:3, nrow=1))
isNumericAtomicVector(matrix(1:3, ncol=1))
isNumericAtomicVector(1:5)
isNumericAtomicVector(letters)

## cases where isNumericAtomicVector returns 
## FALSE 
isNumericAtomicVector(list(1:3))
isNumericAtomicVector(data.frame(1:3,2:4))
isNumericAtomicVector(matrix(1:12, nrow=4))

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.