Las funciones max, min, pmax y pmin en R

R proporciona varias funciones para buscar valores máximos y mínimos. max
y min
devolverán el valor máximo y mínimo de un único vector, respectivamente, mientras que pmax
y pmin
devolverán los valores máximo y mínimo de varios vectores en paralelo.
max()
La función max
devuelve el máximo del vector de entrada. Sólo devuelve un valor.
Sin embargo, si el vector contiene un valor omitido (NA
), la función devolverá un NA
.
Si quieres evitarlo, puedes establecer el argumento na.rm
de la función como TRUE
, de modo que los valores que falten se eliminarán antes de obtener el valor máximo.
max(c(Inf, NA))
es NA
, a pesar de que el máximo valor posible de un NA
sea Inf
.
min()
La función min
es lo contrario de max
, ya que devuelve el valor mínimo del vector de entrada. Esta función se utiliza de la misma manera que la otra y también proporciona un argumento llamado na.rm
que se puede establecer en TRUE
para eliminar los valores que faltan, si es que hubiese alguno.
pmax()
La función pmax
es similar a max
pero en lugar de un vector puede tomar varios y devolverá el valor máximo entre los valores de cada índice de los vectores. A modo ilustrativo, en el siguiente ejemplo, el primer valor devuelto es 52 porque es el máximo entre 45, 15 y 52, el segundo valor devuelto es 35 porque es el máximo entre 12, 35 y 12, y así sucesivamente.
Si la longitud de los vectores es diferente la función devolverá un vector de la longitud del vector mayor y se reciclarán los vectores más pequeños. En el ejemplo siguiente esto implica que en el quinto elemento, la función buscará el valor máximo entre 61, 15 (reciclado, primer valor de x1
) y 17 y en el último elemento la función comparará 56, 35 (reciclado, segundo valor de x2
) y 52 (reciclado, primer valor de x3
).
Ten en cuenta que aparecerá un mensaje de advertencia si la longitud de los vectores más pequeños no es múltiplo del vector más grande.
pmin()
La función pmin
es la misma que pmax
pero devolverá los valores mínimos elemento a elemento para cada índice de los vectores de entrada. En el ejemplo de abajo el primer valor es 15 porque es el mínimo entre 45, 15 y 52, el segundo valor es 12 porque es el mínimo entre 12, 35 y 12 y así sucesivamente.
Esta función se comportará igual que pmax
si las longitudes de los vectores de entrada son diferentes.