Create templates for use by alike. Currently somewhat
experimental; behavior may change in future.
abstract(x, ...)# S3 method for data.frame
abstract(x, ...)
# S3 method for default
abstract(x, ...)
# S3 method for array
abstract(x, ...)
# S3 method for matrix
abstract(x, ...)
# S3 method for list
abstract(x, ...)
# S3 method for lm
abstract(x, ...)
# S3 method for environment
abstract(x, ...)
# S3 method for ts
abstract(x, what = c("start", "end", "frequency"), ...)
abstracted object
the object to abstract
arguments for methods that require further arguments
for time series which portion of the ts attribute to
abstract, by default all three are abstracted, but you can select, any one,
two, or all
abstract replaces the "tsp" attribute with a "tsp_vetr" attribute with the
components specified in what set to zero. alike will
treat it as a "tsp" attribute except that the zero components become
wildcards. If you manually create a template object with both
"tsp" and "tsp_vetr" attributes, "tsp_vetr" is treated as a regular
attribute. vetr does not consider whether the "ts" class is also set
when attributing special semantics to the "tsp". The "tsp_vetr" attribute is
required because R does not permit 0 values in "tsp". Prior to R4.6.0 and
vetr 2.20, vetr constructed a "tsp" attribute with zeroes, but it no
longer does that.
abstract is intended to create templates for use by
alike. The result of abstraction is often a partially
specified object. This type of object may not be suited for use in typical
R computations and may cause errors (or worse) if you try to use them as
normal R objects.
There is no guarantee that the abstracted object is suitable for use
as a template to alike as is. You may need to modify it further so
that it suits your purposes.
abstract is an S3 generic. The default method will
dispatch on implicit classes, so if you attempt to abstract an object
without an explicit abstract method, it will get abstracted based on
its implicit class. If you define your own abstract method and do not
wish further abstraction based on implicit classes do not use
NextMethod.
S4 and RC objects are returned unchanged.
iris.tpl <- abstract(iris)
alike(iris.tpl, iris[1:10, ])
alike(iris.tpl, transform(iris, Species=as.character(Species)))
abstract(1:10)
abstract(matrix(1:9, nrow=3))
abstract(list(1:9, runif(10)))
Run the code above in your browser using DataLab