validate: 'lcMethod' estimation step: method argument validation logic

validateR Documentation

lcMethod estimation step: method argument validation logic

Description

Note: this function should not be called directly, as it is part of the lcMethod estimation procedure. For fitting an lcMethod object to a dataset, use the latrend() function or one of the other standard estimation functions.

The validate() function of the lcMethod object validates the method with respect to the training data. This enables a method to verify, for example:

  • whether the formula covariates are present.

  • whether the argument combination settings are valid.

  • whether the data is suitable for training.

By default, the validate() function checks whether the id, time, and response variables are present as columns in the training data.

Usage

## S4 method for signature 'lcMethod'
validate(method, data, envir = NULL, ...)

Arguments

method

An object inheriting from lcMethod with all its arguments having been evaluated and finalized.

data

A data.frame representing the transformed training data.

envir

The environment in which the lcMethod should be evaluated

...

Not used.

Value

Either TRUE if all validation checks passed, or a character containing a description of the failed validation checks.

Implementation

An example implementation checking for the existence of specific arguments and type:


library(assertthat)
setMethod("validate", "lcMethodExample", function(method, data, envir = NULL, ...) {
  validate_that(
    hasName(method, "myArgument"),
    hasName(method, "anotherArgument"),
    is.numeric(method$myArgument)
  )
})

Estimation procedure

The steps for estimating a lcMethod object are defined and executed as follows:

  1. compose(): Evaluate and finalize the method argument values.

  2. validate(): Check the validity of the method argument values in relation to the dataset.

  3. prepareData(): Process the training data for fitting.

  4. preFit(): Prepare environment for estimation, independent of training data.

  5. fit(): Estimate the specified method on the training data, outputting an object inheriting from lcModel.

  6. postFit(): Post-process the outputted lcModel object.

The result of the fitting procedure is an lcModel object that inherits from the lcModel class.

See Also

assertthat::validate_that


latrend documentation built on March 31, 2023, 5:45 p.m.