term_contain function

Determine which Terms Contain a Term

Determine which Terms Contain a Term

The definition of containment follows from the SAS documentation on "The Four Types of Estimable Functions".

term_contain(term, factors, dataClasses, term_names)

Arguments

  • term: character; name of a model term and one of term_names.
  • factors: the result of attr(terms_object, "factors").
  • dataClasses: the result of attr(terms(model, fixed.only=FALSE), "dataClasses"). Note that fixed.only=FALSE is only needed for merMod objects, but does no harm for lm objects.
  • term_names: the result of attr(terms_object, "term.labels").

Returns

a logical vector indicating for each term in term_names if it contains term.

Details

Containment is defined for two model terms, say, F1 and F2 as: F1 is contained in F2 (F2 contains F1) if

  1. F1 and F2 involve the same continuous variables (if any)
  2. F2 involve more factors than F1
  3. All factors in F1 (if any) are part of F2

The intercept, though not really a model term, is defined by SAS to be contained in all factor terms, but it is not contained in any effect involving a continuous variable.

  • Maintainer: Rune Haubo Bojesen Christensen
  • License: GPL (>= 2)
  • Last published: 2020-10-23