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

Compactly Display the Structure of an Arbitrary R Object

Description

This is a “diagnostic” function, and an alternative to summary. Ideally, only one line for each “basic” structure is displayed. It is especially well suited to compactly display the (abbreviated) contents of (possibly nested) lists. The idea is to give reasonable output for any R object. It calls args for (non-primitive) function objects.

ls.str and lsf.str are useful “versions” of ls, calling str on each object. They are not foolproof and should rather not be used for programming, but are provided for their usefulness.

Usage

str(object, ...)
str.data.frame(object, ...)
str.default(object, max.level = 0, vec.len = 4, digits.d = 3,
    give.attr = TRUE, give.length = TRUE,
    wid = .Options$width,
    nest.lev = 0,
    indent.str = paste(rep(" ", max(0, nest.lev + 1)), collapse = ".."))

ls.str(name, pattern, mode = "any", max.level = 1, give.attr = FALSE)
lsf.str(...)

Arguments

object

any R object about which you want to have some information.

max.level

maximal level of nesting which is applied for displaying nested structures, e.g., a list containing sub lists. Default 0: Display all nesting levels.

vec.len

numeric indicating how many “first few” elements are displayed of each vector. The number is multiplied by different factors (from .5 to 3) depending on the kind of vector. Default 4.

digits.d

number of digits for numerical components (as for print).

give.attr

logical; if TRUE (default), show attributes as sub structures.

give.length

logical; if TRUE (default), indicate length (as [1:...]).

wid

the page width to be used. The default is the currently active option("width").

nest.lev

current nesting level in the recursive calls to str.

indent.str

the indentation string to use.

Value

Nothing, for efficiency reasons. The obvious side effect is output to the terminal.

Author(s)

Martin Maechler maechler@stat.math.ethz.ch since 1990. Currently at Seminar f<fc>r Statistik, ETH Z<fc>rich, Switzerland.

See Also

summary, args.

Examples

## The following examples show some of `str' capabilities
str(1:12)
str(ls)
str(args)#- more useful than  args(args) !
data(freeny); str(freeny)
str(str)
str(.Machine, digits = 20)
str( lsfit(1:9,1:9))
str( lsfit(1:9,1:9),  max =1)
op <- options(); str(op)#- save first; otherwise internal options() is used.
need.dev <- !exists(".Device") || is.null(.Device)
if(need.dev) postscript(); str(par()); if(need.dev) graphics.off()

lsf.str()#- how do the functions look like which I am using?
ls.str(mode = "list")#- what are the structured objects I have defined?

[Package base version 0.60 ]