R语言 对因子值进行排序
在这篇文章中,我们将看到如何在R编程语言中排序因子值。
我们可以使用as.ordered()方法对因子值进行排序。它在dplyr()包中可用。因此,我们必须加载这个包。
语法
library(dplyr)
语法
as.ordered(factor_data)
例1 :
在这个例子中,我们将创建一个有6个字符串的因子,并对这些值进行排序。
library(dplyr)
# create factor data with 5 strings
factor_data < - as.factor(c("sravan", "sravan", "bobby",
"pinkey", "sravan"))
# display before ordering
print(factor_data)
# display after ordering
print(as.ordered(factor_data))
输出
[1] sravan sravan bobby pinkey sravan
Levels: bobby pinkey sravan
[1] sravan sravan bobby pinkey sravan
Levels: bobby < pinkey < sravan
例2 :
在这个例子中,我们将创建一个有6个整数元素的因子,并对这些值进行排序。
library(dplyr)
# create factor data with 5 numeric values
factor_data < - as.factor(c(1, 2, 3, 2, 3))
# display before ordering
print(factor_data)
# display after ordering
print(as.ordered(factor_data))
输出
[1] 1 2 3 2 3
Levels: 1 2 3
[1] 1 2 3 2 3
Levels: 1 < 2 < 3
我们还可以检查一个因子中的值是否是有序的。 is.ordered() 是用来检查的。如果因子的值是有序的,它将返回TRUE。否则,它将返回 FALSE。
语法 :
is.ordered(factor_data)
例子:
检查因子值是否是有序的。
library(dplyr)
# create factor data with 5 numeric values
factor_data < - as.factor(c(1, 2, 3, 2, 3))
# check values are ordered or not
# before ordering
print(is.ordered(factor_data))
# order the values
order = as.ordered(factor_data)
# check values are ordered or not
# after ordering
print(is.ordered(order))
输出:
[1] FALSE
[1] TRUE