Learn R Programming

mosaic (version 0.13.0)

do: Do Things Repeatedly

Description

do() provides a natural syntax for repetition tuned to assist with replication and resampling methods.

Usage

do(object, ...)

## S3 method for class 'numeric': do(object, ...)

## S3 method for class 'default': do(object, ...)

Do(n = 1L, cull = NULL, mode = "default", algorithm = 1, parallel = TRUE)

## S3 method for class 'repeater': print(x, ...)

## S3 method for class 'repeater,ANY': *(e1, e2)

Arguments

object
an object
...
additional arguments
n
number of times to repeat
cull
function for culling output of objects being repeated. If NULL, a default culling function is used. The default culling function is currently aware of objects of types lme, lm, htest, table, coi
mode
target mode for value returned
algorithm
a number usd to select the algorithm used. Currently numbers below 1 use an older algorithm and numbers >=1 use a newer algorithm which is faster in some situations.
parallel
a logical indicating whether parallel computation should be attempted using the parallel package (if it is installed and loaded).
x
an object created by do.
e1
an object (in cases documented here, the result of running do)
e2
an object (in cases documented here, an expression to be repeated)

Value

  • do returns an object of class repeater which is only useful in the context of the operator *. See the examples.

See Also

replicate, set.rseed

Examples

Run this code
do(3) * rnorm(1)
do(3) * "hello"
do(3) * 1:4
do(3) * mean(rnorm(25))
if (require(mosaicData)) {
  do(3) * lm(shuffle(height) ~ sex + mother, Galton)
  do(3) * anova(lm(shuffle(height) ~ sex + mother, Galton))
  do(3) * c(sample.mean = mean(rnorm(25)))
  set.rseed(1234)
  do(3) * tally( ~sex|treat, data=resample(HELPrct))
  set.rseed(1234)  # re-using seed gives same results again
  do(3) * tally( ~sex|treat, data=resample(HELPrct))
}

Run the code above in your browser using DataLab