如何在R中使用min()和max()

时间:2020-02-23 14:43:52  来源:igfitidea点击:

使用R中的min()和max()函数,查找最小值和最大值非常简单。

您知道我们具有平均值,中位数,sd和众数之类的函数,分别用于计算值的平均值,中间值和离散度。
但是您是否曾经想到过一个可以在向量或者数据框中为您提供最小值和最大值的函数?

如果是这样,那么恭喜您,您获得了名为min()和max()的函数,它们分别返回最小值和最大值。

听起来很有趣吧?让我们看看它是如何工作的!

让我们从语法开始

min()函数的语法如下。

min(x, na.rm = FALSE)

  • x =向量或者数据帧。

  • na.rm =删除NA值,如果提到False,则认为NA;如果提到True,则从向量或者数据帧中删除NA。

max()函数的语法如下。

max(x, na.rm = FALSE)

  • x =向量或者数据帧。

  • na.rm =删除NA值,如果提到False,则认为NA;如果提到True,则从向量或者数据帧中删除NA。

R中的Max()函数

在本节中,我们将找到向量中存在的最大值。
为此,我们首先创建一个向量,然后应用max()函数,该函数返回向量中的最大值。

#creates a vector 
vector<-c(45.6,78.8,65.0,78.9,456.7,345.89,87.6,988.3)

#returns the max values present in the vector
max(vector)

输出= 988.3

R中的Min()函数

其中我们将使用min()函数在向量中找到最小值。
您可以创建一个向量,然后将min()应用于该向量,该向量将返回最小值,如下所示。

#creates a vector
vector<-c(45.6,78.8,65.0,78.9,456.7,345.89,87.6,988.3)

#returns the minimum value present in the vector 
min(vector)

输出= 45.6

R中具有NA值的Max()函数

有时在数据分析中,您可能会在数据帧和向量中遇到NA值。
然后,您需要绕过NA值以获得所需的结果。

如果max函数在处理过程中遇到NA值,则不会返回任何值。
因此,您必须从向量或者数据帧中删除NA值才能获得最大值。

#creates a vector having NA values
df<- c(134,555,NA,567,876,543,NA,456)

#max function won't return any value because of the presence of NA. 
max(df)

#results in NA instead of max value
Output = NA

因此,为了避免这种情况并获得最大值,我们使用na.rm函数从向量中删除NA值。
现在您可以看到max()函数正在返回最大值。

#max function with remove NA values is set as TRUE.
max(df, na.rm = T)

输出= 876

R中具有Min值的Min()函数

就像我们在上一节中应用max函数一样,这里我们将在具有NA值的向量中找到最小值。

#creates a vector having NA values
df<- c(134,555,NA,567,876,543,NA,456)

#returns NA instead of minimum value
min(df)

输出= NA

为了克服这个问题,我们使用na.rm函数从向量中删除NA值。
现在您可以使min()函数返回最小值。

#creates a vector having NA values
df<- c(134,555,NA,567,876,543,NA,456)

#removes NA values and returns the minimum value in the vector
min(df, na.rm = T)

输出= 134

字符向量中的Min()和Max()函数

到现在为止,我们已经处理了数值的最小值和最大值。
如果需要告诉您一些信息,我想说的是,您也可以找到字符向量的最小值和最大值。
是的,您没听错!

让我们看看它是如何工作的!

对于字符向量,min和max函数将考虑字母顺序,并相应地返回min和max值,如下所示。

#creates a character vector with some names
character_vector<- c('John','Angelina','Smuts','Garena','Lucifer')

#returns the max value
max(character_vector)

输出="黑穗我将"

同样,我们也可以使用min()函数在字符向量中找到最小值,如下所示。

#creates a character vector with some names 
character_vector<- c('John','Angelina','Smuts','Garena','Lucifer')

#returns the minimum values in the vector
min(character_vector)

输出="天使"

数据帧中的Min()和Max()函数

通过导入来查找数据框的最小值和最大值。
数据集中的最小值和最大值将为数据分配提供一个合理的思路。

这是R studio中可用的空气质量数据集。
请注意,数据集包含NA值。
了解了使用na.rm函数删除NA值后,让我们在Ozone值中找到最小值和最大值。

min(airquality$Ozone, na.rm=T)

输出= 1

max(airquality$Ozone, na.rm = T)

输出= 168

让我们在空气质量数据集中找到温度值的最小值和最大值。

min(airquality$Temp, na.rm = T)

输出= 56

max(airquality$Temp, na.rm = T)

输出= 97