R min() and max()

In R, we can find the minimum or maximum value of a vector or data frame.

We use the min() and max() function to find minimum and maximum value respectively.

  • The min() function returns the minimum value of a vector or data frame.
  • The max() function returns the maximum value of a vector or data frame.

Syntax of min() and max() in R

The syntax of the min() and max() function is

For min()

min(collection, na.rm = Boolean)

For max()

max(collection, na.rm = Boolean)

In both the syntax,

  • collection - is a vector or data frame
  • na.rm (optional) - is a boolean value that indicates whether value should be kept or removed,

Example 1: Use of min() in R

numbers <- c(2,4,6,8,10)
 
# return minimum value present in numbers min(numbers) # 2
characters <- c("s", "a", "p", "b")
# return alphabetically minimum value in characters min(characters) # "a"

Output

[1] 2
[1] "a"

Here,

  • min(numbers) - returns the smallest number in numbers i.e. 2
  • min(characters) - returns alphabetically minimum value in characters i.e. "a"

Example 2: Use of max() in R

numbers <- c(2,4,6,8,10)
 
# return largest value present in numbers max(numbers) # 10
characters <- c("s", "a", "p", "b")
# return alphabetically maximum value in characters max(characters) # "s"

Output

[1] 10
[1] "s"

Here,

  • max(numbers) - returns the largest number in numbers i.e. 10
  • max(characters) - returns alphabetically maximum value in characters i.e. "s"

min() and max() in R with NA Values

While working on a large data set, we may encounter NA (Not Applicable) values in a vector.

In this case the min() function doesn't give desired output if NA is present. For example,

numbers <- c(2, NA, 6, 7, NA, 10)
 
# return smallest value min(numbers) # NA

Output

[1] NA

Here, we get NA as output. But that is not the desired output.

So we can handle this using na.rm argument

numbers <- c(2, NA, 6, 7, NA, 10)
 
# return smallest value min(numbers, na.rm = TRUE) # 2

Output

[1] 2

Here, we have used the na.rm argument to handle NA values.

By setting na.rm to TRUE, we have removed NA before the computation. So the output will be 2 not NA.

Note: Similar to min(), we can use max() with NA values too.


min() and max() in a Data Frame

In R, we can use min() and max() to find minimum and maximum value in a certain column of a data frame. For example,

# Create a data frame
dataframe1 <- data.frame (
  Name = c("Juan", "Kay", "Jay", "Ray", "Aley"),
  Age = c(22, 15, 19, 30, 23),
  ID = c(101, 102, 103, 104, 105)
)

# return maximum value of Age column of dataframe1
print(max(dataframe1$Age)) # 30

# return minimum value of ID column of dataframe1 
print(min(dataframe1$ID)) # 101

Output

[1] 30
[1] 101

Here, we have used the max() and min() function to find the maximum and minimum value of the Age and ID column respectively.

  • max(dataframe1$Age) - returns the maximum value from the Age column of dataframe1 i.e. 30.
  • min(dataframe1$ID) - returns the minimum value from the ID column of dataframe1 i.e. 101.