options {base} | R Documentation

## Options Settings

### Description

Allow the user to set and examine a variety of global “options” which affect the way in which R computes and displays its results.

### Usage

    options(...)

    getOption(x)

    .Options

### Arguments

`...` | any options can be defined, using `name = value` or by passing a list of such tagged values. However, only the ones below are used in “base R”. Further, `options('name') == options()['name']`, see the example.
`x` | a character string holding an option name.

### Details

Invoking `options()` with no arguments returns a list with the current values of the options. Note that not all options listed below are set initially. To access the value of a single option, one should use `getOption("width")`, e.g., rather than `options("width")` which is a list of length one.

`.Options` also always contains the `options()` list (as a pairlist, unsorted), for S compatibility. Assigning to it will make a local copy and not change the original.

### Value

For `getOption`, the current value set for option `x`, or `NULL` if the option is unset.
For `options()`, a list of all set options sorted by name. For `options(name)`, a list of length one containing the set value, or `NULL` if it is unset. For uses setting one or more options, a list with the previous values of the options changed (returned invisibly).

### Options used in base R

`add.smooth`:
  typically logical, defaulting to `TRUE`. Could also be set to an integer for specifying how many (simulated) smooths should be added. This is currently only used by `plot.lm`.
`check.bounds`:
  logical, defaulting to `FALSE`. If true, a warning is produced whenever a “generalized vector” (atomic or `list`) is extended, by something like `x <- 1:3; x[5] <- 6`.
`continue`:
  a string setting the prompt used for lines which continue over one line.
`defaultPackages`:
  the packages that are attached by default when R starts up. Initially set from value of the environment variable `R_DEFAULT_PACKAGES`, or if that is unset to `c("datasets", "utils", "grDevices", "graphics", "stats", "methods")`. (Set `R_DEFAULT_PACKAGES` to `NULL` or a comma-separated list of package names.) A call to `options` should be in your ‘`.Rprofile`’ file to ensure that the change takes effect before the base package is initialized (see `Startup`).
`deparse.max.lines`:
  controls the number of lines used when deparsing in `traceback` and `browser`. Initially unset, and only used if set to a positive integer.
`digits`:
  controls the number of digits to print when printing numeric values. It is a suggestion only. Valid values are 1...22 with default 7. See `print.default`.
`digits.secs`:
  controls the maximum number of digits to print when formatting time values in seconds. Valid values are 0...6 with default 0. See `strftime`.
`download.file.method`:
  Method to be used for `download.file`. Currently download methods `"internal"`, `"wget"` and `"lynx"` are available. There is no default for this option, when `method = "auto"` is chosen: see `download.file`.
`echo`:
  logical. Only used in non-interactive mode, when it controls whether input is echoed. Command-line option `--slave` sets this initially to `FALSE`.
`encoding`:
  The name of an encoding, default `"native.enc"`). See `connections`.
`error`:
  either a function or an expression governing the handling of non-catastrophic errors such as those generated by `stop` as well as by signals and internally detected errors. If the option is a function, a call to that function, with no arguments, is generated as the expression. The default value is `NULL`: see `stop` for the behaviour in that case. The functions `dump.frames` and `recover` provide alternatives that allow post-mortem debugging.
`expressions`:
  sets a limit on the number of nested expressions that will be evaluated. Valid values are 25...500000 with default 5000. If you increase it, you may also want to start R with a larger protection stack; see `--max-ppsize` in `Memory`. Note too that you may cause a segfault from overflow of the C stack, and on OSes where it is possible you may want to increase that.
`keep.source`:
  When `TRUE`, the source code for functions (newly defined or loaded) is stored in their `"source"` attribute (see `attr`) allowing comments to be kept in the right places.

  The default is `interactive()`, i.e., `TRUE` for interactive use.

`keep.source.pkgs`:
  As for `keep.source`, for functions in packages loaded by `library` or `require`. Defaults to `FALSE` unless the environment variable `R_KEEP_PKG_SOURCE` is set to `yes`.

  Note this does not apply to packages using lazy-loading or saved images. Whether they have kept source is determined when they are installed (and is almost certainly false).

`mailer`:
  default mailer used by `bug.report()`. Can be `"none"`.
`max.print`:
  integer, defaulting to `10000`. `print` or `show` methods can make use of this option, to limit the amount of information that is printed, typically to something in the order `max.print` lines.

  This is not yet used in base R.

`OutDec`:
  one-character string. The character to be used as the decimal point in output conversions, that is in printing, plotting and `as.character` but not deparsing.
`pager`:
  the (stand-alone) program used for displaying text files on R's console, also used by `file.show` and sometimes `help`. Defaults to `"internal"`, which uses a pager similar to the GUI console. Another possibility is `"console"` to use the console itself.
`papersize`:
  the default paper format used by `postscript`; set by environment variable `R_PAPERSIZE` when R is started: if that is unset or invalid it defaults to `"a4"`, or `"letter"` in US and Canadian locales.
`printcmd`:
  the command used by `postscript` for printing; set by environment variable `R_PRINTCMD` when R is started. This should be a command that expects either input to be piped to ‘`stdin`’ or to be given a single filename argument.
`prompt`:
  a string, used for R's prompt; should usually end in a blank (`" "`).
`save.defaults`, `save.image.defaults`:
  see `save`.
`scipen`:
  integer. A penalty to be applied when deciding to print numeric values in fixed or exponential notation. Positive values bias towards fixed and negative towards scientific notation: fixed notation will be preferred unless it is more than `scipen` digits wider.
`show.error.messages`:
  a logical. Should error messages be printed? Intended for use with `try` or a user-installed error handler.
`texi2dvi`:
  used by the unexported function `texi2dvi` in namespace tools.
`timeout`:
  integer. The timeout for some Internet operations, in seconds. Default 60 seconds. See `download.file` and `connections`.
`topLevelEnvironment`:
  see `topenv` and `sys.source`.
`verbose`:
  logical. Should R report extra information on progress? Set to `TRUE` by the command-line option `--verbose`.
`warn`:
  sets the handling of warning messages. If `warn` is negative all warnings are ignored. If `warn` is zero (the default) warnings are stored until the top–level function returns. If fewer than 10 warnings were signalled they will be printed otherwise a message saying how many (max 50) were signalled. A top–level variable called `last.warning` is created and can be viewed through the function `warnings`. If `warn` is one, warnings are printed as they occur. If `warn` is two or larger all warnings are turned into errors.
`warning.expression`:
  an R code expression to be called if a warning is generated, replacing the standard message. If non-null it is called irrespective of the value of option `warn`.
`warnings.length`:
  sets the truncation limit for error and warning messages. A non-negative integer, with allowed values 100...8192, default 1000.
`width`:
  controls the number of characters on a line. You may want to change this if you re-size the window that R is running in. Valid values are 10...10000 with default normally 80. (The limits on valid values are in file ‘`Print.h`’ and can be changed by re-compiling R.)

The ‘factory-fresh’ default settings of some of these options are

`add.smooth` | `TRUE`
`check.bounds` | `FALSE`
`continue` | `"+ "`
`digits` | `7`
`echo` | `TRUE`
`encoding` | `"native.enc"`
`error` | `NULL`
`expressions` | `5000`
`keep.source` | `interactive()`
`keep.source.pkgs` | `FALSE`
`max.print` | `1000`
`OutDec` | `"."`
`prompt` | `"> "`
`scipen` | `0`
`show.error.messages` | `TRUE`
`timeout` | `60`
`verbose` | `FALSE`
`warn` | `0`
`warnings.length` | `1000`
`width` | `80`

Others are set from environment variables or are platform-dependent.

### Options set in package grDevices

These will be set when package grDevices (or its name space) is loaded if not already set.

`device`:
  a character string giving the default device for that session. This defaults to the normal screen device (e.g., `x11`, `windows` or `quartz`) for an interactive session, and `postscript` in batch use or if a screen is not available.
`locatorBell`:
  logical. Should selection in `locator` and `identify` be confirmed by a bell. Default `TRUE`. Honoured at least on `X11` and `windows` devices.
`gamma`:
  double. The default value of `gamma` for `windows` devices, defaulting to 1 if unset (the default).
`graphics.record`:
  logical. The default value of `record` for `windows` devices. Default `FALSE`.
`windowsBuffered`:
  logical. Should `windows` devices be double-buffered?. Default `TRUE`.
`windowsTimeout`:
  integer vector of length 2 representing two times in milliseconds. These control the double-buffering of `windows` devices when that is enabled: the first is the delay after plotting finishes (default 100) and the second is the update interval during continuous plotting (default 500).
`xpinch, ypinch`:
  double. Pixels per inch, horizontally and vertically. If unset (the default), taken from Windows.

### Options set in package stats

These will be set when package stats (or its name space) is loaded if not already set.

`contrasts`:
  the default `contrasts` used in model fitting such as with `aov` or `lm`. A character vector of length two, the first giving the function to be used with unordered factors and the second the function to be used with ordered factors. By default the elements are named `c("unordered", "ordered")`, but the names are unused.
`na.action`:
  the name of a function for treating missing values (`NA`'s) for certain situations.
`show.coef.Pvalues`:
  logical, affecting whether P values are printed in summary tables of coefficients. See `printCoefmat`.
`show.signif.stars`:
  logical, should stars be printed on summary tables of coefficients? See `printCoefmat`.
`ts.eps`:
  the relative tolerance for certain time series (`ts`) computations. Default `1e-05`.
`ts.S.compat`:
  logical. Used to select S compatibility for plotting time-series spectra. See the description of argument `log` in `plot.spec`.

### Options set in package utils

These will be set when package utils (or its name space) is loaded if not already set.

`browser`:
  default HTML browser used by `help.start()` on UNIX, or a non-default browser on Windows.
`de.cellwidth`:
  integer: the cell widths (number of characters) to be used in the data editor `dataentry`. If this is unset (the default), 0, negative or `NA`, variable cell widths are used.
`editor`:
  sets the default text editor, e.g., for `edit`. Set from the environment variable `VISUAL` on UNIX.
`help.try.all.packages`:
  default for an argument of `help`.
`internet.info`:
  The minimum level of information to be printed on URL downloads etc. Default is 2, for failure causes. Set to 1 or 0 to get more information.
`pkgType`:
  The default type of packages to be downloaded and installed – see `install.packages`. Possible values are `"win.binary"` (the default) and `"source"`.
`repos`:
  URLs of the repositories for use by `update.packages`. Defaults to `c(CRAN="@CRAN@")`, a value that causes some utilities to prompt for a CRAN mirror. To avoid this do set the CRAN mirror, by something like `local({r <- getOption("repos"); r["CRAN"] <- "http://my.local.cran"; options(repos=r)})`.

  Note that you can add more repositories (Bioconductor and Omegahat, notably) using `setRepositories()`.

`SweaveHooks`, `SweaveSyntax`:
  see `Sweave`.
`unzip`:
  the command used for unzipping help files. Defaults to `"internal"` when the internal unzip code is used.

### Options used on Windows only

`warn.FPU`:
  logical, by default undefined. If true, a warning is produced whenever dyn.load repairs the control word damaged by a buggy DLL.

### References

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.

### Examples

    options() # printing all current options
    op <- options(); str(op) # nicer printing

    options('width')[[1]] == options()$width # the latter needs more memory
    options(digits = 20)
    pi

    # set the editor, and save previous value
    old.o <- options(editor = "nedit")
    old.o

    options(check.bounds = TRUE, warn = 1)
    x <- NULL; x[4] <- "yes" # gives a warning

    options(digits=5)
    print(1e5)
    options(scipen=3); print(1e5)

    options(op)     # reset (all) initial options
    options('digits')

    ## Not run:
    ## set contrast handling to be like S
    options(contrasts = c("contr.helmert", "contr.poly"))
    ## End(Not run)
    ## Not run:
    ## on error, terminate the R session with error status 66
    options(error = quote(q("no", status=66, runLast=FALSE)))
    stop("test it")
    ## End(Not run)
    ## Not run:
    ## Set error actions for debugging:
    ## enter browser on error, see ?recover:
    options(error = recover)
    ## allows to call debugger() afterwards, see ?debugger:
    options(error = dump.frames)
    ## A possible setting for non-interactive sessions
    options(error = quote({dump.frames(to.file=TRUE); q()}))
    ## End(Not run)

[Package base version 2.3.1 Index]