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)
.
In Rversions before 1.5, min(integer(0)) == .Machine$integer.max
,
and analogously for max
, preserving argument type,
whereas from Rversion 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.