Learn R Programming

VGAM (version 0.8-2)

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(poly) # TRUE
library(splines)
is.smart(bs)   # TRUE
is.smart(ns)   # TRUE
is.smart(tan)  # FALSE
if(!is.R()) is.smart(lm)   # TRUE
library(VGAM)
x <- rnorm(9)
fit1 <- vglm(rnorm(9) ~ x, normal1)
is.smart(fit1)   # TRUE
fit2 <- vglm(rnorm(9) ~ x, normal1, smart = FALSE)
is.smart(fit2)   # FALSE
fit2@smart.prediction

Run the code above in your browser using DataLab