Learn R Programming

pim (version 2.0.2)

has.intercept: Check whether formula has an explicit intercept

Description

This function checks whether an intercept is present in a formula of some form. It works for a formula, a terms.object a pim.formula object or a character vector representing a formula.

Usage

has.intercept(x)

# S4 method for character has.intercept(x)

# S4 method for formula has.intercept(x)

# S4 method for terms has.intercept(x)

# S4 method for pim.formula has.intercept(x)

# S4 method for pim has.intercept(x)

Arguments

x

either a formula, pim.formula, terms.object or a character vector representing a formula.

Value

a single logical value

WARNING

This function will return FALSE for a standard formula that is used in the context of a marginal model. Keep in mind that when specifying model = 'marginal' in a call to pim, the model will contain an intercept regardless of the outcome of has.intercept

Details

In case of a terms.object, this function only checks whether the intercept attribute is larger than 0. In all other cases, the function checks whether it can find a + 1 somewhere in the formula, indicating that an intercept has to be fit in a pim.

Examples

Run this code
# NOT RUN {
data("FEVData")
# Create the "model frame"
FEVenv <- new.pim.env(FEVData, compare="unique")
# create the formula and bind it to the pim.environment.
FEVform <- new.pim.formula(
  Age ~ I(L(Height) - R(Height))  ,
  FEVenv
)
has.intercept(FEVform)
FEVform2 <- new.pim.formula(Age ~ Height + 1, FEVData)
has.intercept(FEVform2)

# }

Run the code above in your browser using DataLab