Learn R Programming

VGAM (version 0.9-4)

is.smart: Test For a Smart Object

Description

Tests an object to see if it is smart.

Usage

is.smart(object)

Arguments

object
a function or a fitted model.

Value

  • Returns TRUE or FALSE, according to whether the object is smart or not.

Details

If object is a function then this function looks to see whether object has the logical attribute "smart". If so then this is returned, else FALSE.

If object is a fitted model then this function looks to see whether object@smart.prediction or object$smart.prediction exists. If it does and it is not equal to list(smart.arg=FALSE) then a TRUE is returned, else FALSE. The reason for this is because, e.g., lm(...,smart=FALSE) and vglm(...,smart=FALSE), will return such a specific list.

Writers of smart functions manually have to assign this attribute to their smart function after it has been written.

Examples

Run this code
is.smart(my1)  # TRUE
is.smart(sm.poly) # TRUE
library(splines)
is.smart(sm.bs)   # TRUE
is.smart(sm.ns)   # TRUE
is.smart(tan)  # FALSE
x <- rnorm(9)
fit1 <- vglm(rnorm(9) ~ x, uninormal)
is.smart(fit1)   # TRUE
fit2 <- vglm(rnorm(9) ~ x, uninormal, smart = FALSE)
is.smart(fit2)   # FALSE
fit2@smart.prediction

Run the code above in your browser using DataLab