R min() 和 max()

在 R 语言中,我们可以找到向量或数据框的最小值或最大值。

我们使用 min()max() 函数分别查找最小值和最大值。

  • min() 函数返回向量或数据框中的最小值。
  • max() 函数返回向量或数据框中的最大值。

R 语言中 min() 和 max() 的语法

min() 和 max() 函数的语法是

对于 min()

min(collection, na.rm = Boolean)

对于 max()

max(collection, na.rm = Boolean)

在两种语法中,

  • collection - 是一个向量或数据框
  • na.rm (可选) - 是一个布尔值,表示值应该保留还是删除

示例 1:R 语言中 min() 的使用

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"

输出

[1] 2
[1] "a"

这里,

  • min(numbers) - 返回 numbers 中最小的数字,即 2
  • min(characters) - 返回 characters 中按字母顺序排列的最小值,即 "a"

示例 2:R 语言中 max() 的使用

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"

输出

[1] 10
[1] "s"

这里,

  • max(numbers) - 返回 numbers 中最大的数字,即 10
  • max(characters) - 返回 characters 中按字母顺序排列的最大值,即 "s"

R 语言中带有 NA 值的 min() 和 max()

处理大型数据集时,我们可能会在向量中遇到 NA(不适用)值。

在这种情况下,如果存在 NAmin() 函数不会给出期望的输出。例如,

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

输出

[1] NA

这里,我们得到 NA 作为输出。但这并不是期望的输出。

所以我们可以使用 na.rm 参数来处理这个问题

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

输出

[1] 2

这里,我们使用了 na.rm 参数来处理 NA 值。

通过将 na.rm 设置为 TRUE,我们在计算前移除了 NA。因此,输出将是 2 而不是 NA

注意:与 min() 类似,我们也可以将 max() 与 NA 值一起使用。


数据框中的 min() 和 max()

在 R 语言中,我们可以使用 min()max() 来查找数据框中某个列的最小值和最大值。例如,

# 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

输出

[1] 30
[1] 101

这里,我们使用 max()min() 函数分别查找 AgeID 列的最大值和最小值。

  • max(dataframe1$Age) - 返回 dataframe1Age 列中的最大值,即 30
  • min(dataframe1$ID) - 返回 dataframe1ID 列中的最小值,即 101
你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战