A set of predicates and assertions for checking the properties of variables, such as length, names and attributes. Most of the documentation is on the assertive page. End-users will usually want to use assertive directly.
To install the stable version, type:
install.packages("assertive.properties")
To install the development version, you first need the remotes package.
install.packages("remotes")
Then you can install the assertive.properties package using
library(remotes)
install_bitbucket("richierocks/assertive.properties")
has_attributes
checks a variable for the presence of named attributes. has_any_attributes
and has_no_attributes
check for the presence or absence of any attributes at all.
has_dims
, has_rows
, and has_cols
check for the dimensions, rows and columns respectively.
has_duplicates
and has_no_duplicates
check whether or not a vector has duplicate elements.
has_names
, has_dimnames
, has_rownames
, and has_colnames
check for various types of name.
is_atomic
, is_recursive
, and is_vector
check for these types of variables.
is_empty
, is_non_empty
, is_scalar
, and is_non_scalar
check for objects of length 0 or 1 (or objects with 0/1 element).
is_of_length
, has_elements
, and is_of_dimension
provide more general variable size checks.
are_same_length
and have_same_dims
check for two variables having the same length/dimensions.
is_null
and is_not_null
check whether an object is NULL
or not.
is_unsorted
checks for unsorted vectors.
Predicates that return a vector have two corresponding assertions. For example,
has_attributes
has assert_has_all_attributes
and assert_has_any_attributes
.
Predicates returning a single logical value have one corresponding assertion.
For example, is_null
has assert_is_null
.
DIM
returns the dimension of an object, and works with vectors (like NROW
and NCOL
).
n_elements
returns the number of elements in an object.
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.