R语言 因素的水平排序
在这篇文章中,我们将看到 R编程语言中因素的水平排序
R – 因素的水平排序
因素是用来对数据进行分类并将其存储为等级的数据对象。它们可以存储一个字符串以及一个整数。它们代表列,因为它们有有限数量的唯一值。R中的因子可以用 factor() 函数创建。 c()函数 被用来创建一个有明确数值的向量。
例子
x < - c("Pen", "Pencil", "Brush", "Pen",
"Brush", "Brush", "Pencil", "Pencil")
print(x)
print(is.factor(x))
# Apply the factor function.
factor_x = factor(x)
levels(factor_x)
输出:
[1] “Pen” “Pencil” “Brush” “Pen” “Brush” “Brush” “Pencil” “Pencil”
[1] FALSE
[1] “Brush” “Pen” “Pencil”
在上面的代码中,x是一个有8个元素的向量。为了将其转换为因子,使用了 factor() 函数。这里有8个因子和3个水平。层次是数据中唯一的元素。可以用 level() 函数找到。
有序因子级别
有序因子是因子的一个扩展。它以递增的顺序排列层次。我们使用两个函数: factor() 和参数 ordered() 。
语法: factor(data, levels =c(“”), ordered =TRUE)
参数
- data: 具有明确定义的值的输入向量。
- levels(): 在c函数中提到的水平列表。
- ordered: 为启用排序而设置为true。
例子
# creating size vector
size = c("small", "large", "large", "small",
"medium", "large", "medium", "medium")
# converting to factor
size_factor <- factor(size)
print(size_factor)
# ordering the levels
ordered.size <- factor(size, levels = c(
"small", "medium", "large"), ordered = TRUE)
print(ordered.size)
输出
[1] small large large small medium large medium medium
Levels: large medium small
[1] small large large small medium large medium medium
Levels: small < medium < large
在上面的代码中,大小向量是用c函数创建的。然后,它被转换为一个因子。为了排序,factor()函数与上述参数一起被使用。因此,尺寸按顺序排列。
同样的事情也可以用有序函数来完成。同样的例子如下所示。
例子
# creating vector size
size = c("small", "large", "large", "small",
"medium", "large", "medium", "medium")
sizes <- ordered(c("small", "large", "large",
"small", "medium"))
# ordering the levels
sizes <- ordered(sizes, levels = c("small", "medium", "large"))
print(sizes)
输出
[1] small large large small medium
Levels: small < medium < large