This help topic is for R version 0.90. For the current version of R, try https://stat.ethz.ch/R-manual/R-patched/library/base/html/mode.html
mode {base}R Documentation

The (Storage) Mode of an Object

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.

Usage

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

Details

As storage mode "single" is only a pseudo-mode in R, it will not be reported by mode or storage.mode: use attr(object, "Csingle") to examine this. However, the assignment versions can be used to set the mode to "single", which sets the real mode to "double" and the "Csingle" attribute to TRUE. Setting any other mode will remove the "Csingle" attribute.

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 base version 0.90 ]