Extremes {base} | R Documentation |
Returns the (parallel) maxima and minima of the input values.
max(..., na.rm=FALSE) min(..., na.rm=FALSE) pmax(..., na.rm=FALSE) pmin(..., na.rm=FALSE)
... |
numeric arguments (see Note). |
na.rm |
a logical indicating whether missing values should be removed. |
max
and min
return the maximum or minimum of all
the values present in their arguments, as integer
if
all are integer
,
or as double
otherwise.
The minimum and maximum of an empty set are +Inf
and -Inf
(in this order!) which ensures transitivity, e.g.,
min(x1, min(x2)) == min(x1, x2)
. From R version 1.5.0,
max(x) == -Inf
and min(x) == +Inf
whenever
length(x) == 0
(after removing missing values if requested).
If na.rm
is FALSE
an NA
value in any of the
arguments will cause a value of NA
to be returned, otherwise
NA
values are ignored.
pmax
and pmin
take several vectors (or matrices) as arguments and
return a single vector giving the “parallel” maxima (or minima) of the
vectors. The first element of the result is the maximum (minimum) of
the first elements of all the arguments, the second element of the
result is the maximum (minimum) of the second elements of all the
arguments and so on. Shorter vectors are recycled if necessary. If
na.rm
is FALSE
, NA
values in the input vectors
will produce NA
values in the output. If na.rm
is
TRUE
, NA
values are ignored.
attributes
(such as names
or
dim
) are transferred from the first argument (if applicable).
max
and min
are generic functions: methods can be defined
for them individually or via the Summary
group generic.
For this to work properly, the arguments ...
should be
unnamed, and dispatch is on the first argument.
By definition the min/max of any vector containing an NaN
is
NaN
, except that the min/max of any vector containing an NA
is NA
even if it also contains an NaN
. Note that
max(NA, Inf) == NA
even though the maximum would be inf
whatever the missing value actually is.
‘Numeric’ arguments are vectors of type integer and numeric,
and logical (coerced to integer). For historical reasons, NULL
is accepted as equivalent to integer(0)
.
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
range
(both min and max) and
which.min
(which.max
) for the arg min,
i.e., the location where an extreme value occurs.
require(stats) min(5:1, pi) #-> one number pmin(5:1, pi) #-> 5 numbers x <- sort(rnorm(100)); cH <- 1.35 pmin(cH, quantile(x)) # no names pmin(quantile(x), cH) # has names plot(x, pmin(cH, pmax(-cH, x)), type='b', main= "Huber's function")