Learn R Programming

splus2R (version 1.0-1)

ifelse1: Conditional Data Selection

Description

This is equivalent to {if(test) x else y} . The main advantage of using this function is better formatting, and a more natural syntax when the result is being assigned; see examples below. With 5 arguments, this is equivalent to {if(test1) x else if(test2) u else v} (where arguments are given by name, not position). In ifelse1, is.numeric.atomic.vector, test should be a single value, and the calculations for y (or x) are not performed if it is not selected. In contrast, for ifelse, test is normally a vector, both x and y are evaluated, even if not used, and x and y are vectors the same length as test.

Usage

ifelse1(test, x, y, ...)

Arguments

test
logical value; if TRUE return x.
x
any object; this is returned if test is TRUE.
y
any object; this is returned if test is FALSE.
...
there should be 3, 5, 7, etc. arguments to this function; arguments 1, 3, 5, etc. should be logical values; the other arguments (even numbered, and last) are objects that may be returned.

Value

  • with three arguments, one of x or y. With k arguments, one of arguments 2, 4, ..., k-1, k.

concept

splus

See Also

anyMissing, as.rectangular, colIds, colMaxs, colMedians, colMins, colRanges, colStdevs, colVars, deparseText, is.rectangular, is.missing, is.zero, lowerCase, oldUnclass, numCols, numRows, peaks, positions, rowIds, rowMaxs, rmvnorm, stdev, subscript2d, upperCase, vecnorm, which.na.

Examples

Run this code
ifelse1(TRUE, "cat", "dog")
ifelse1(FALSE, "one", FALSE, "two", "three")

Run the code above in your browser using DataLab