## The (Storage) Mode of an Object

## Usage

    mode(x)
    mode(x) <- "<mode>"
    storage.mode(x)
    storage.mode(x) <- "<mode>"

## Description

`mode` and `storage.mode` provide means of determining the type or storage mode of an object. Both return a character string giving the (storage) mode of the object – often the same – both relying on the output of `typeof(x)`, see the example below.

The two assignment versions are currently identical. Both `mode(x) <- newmode` and `storage.mode(x) <- newmode` change the `mode` or `storage.mode` of object `x` to `newmode`.

## See Also

`typeof` for the R-internal ``mode'', `attributes`.

## Examples

    sapply(options(),mode)

    cex3 <- c("NULL","1","1:1","1i","list(1)","data.frame(x=1)", "pairlist(pi)",
      "args", "lm", "formals(lm)[[1]]",  "formals(lm)[[2]]",
      "y~x","(y~x)[[1]]", "expression(x <- pi)[[1]][[1]]")
    lex3 <- sapply(cex3, function(x) eval(parse(text=x)))
    mex3 <- t(sapply(lex3, function(x) c(typeof(x), storage.mode(x), mode(x))))
    dimnames(mex3) <- list(cex3, c("typeof(.)","storage.mode(.)","mode(.)"))
    mex3

    ## This also makes a local copy of  `pi':
    storage.mode(pi) <- "complex"
    storage.mode(pi)
    rm(pi)

[Package Contents]