如何在R中创建有序变量?


有序变量是一种分类变量,它具有自然的顺序。例如,有序变量可以是薪资水平,例如用低、中、高三个类别定义,这里我们有三个类别,但是这些类别之间存在自然的顺序,因为低薪总是小于中等薪资,中等薪资总是小于高薪。要在R中创建有序变量,我们可以在创建变量时使用order参数以及factor函数。请按照以下步骤在R中创建有序变量:

  • 使用factor函数创建一个分类列,其中order参数设置为TRUE
  • 查看数据框的结构

创建一个包含有序变量x的数据框df

让我们创建一个如下所示的数据框:

 在线演示

x<-
factor(sample(c("Low","Medium","High"),20,replace=TRUE),order=TRUE,levels=c("Lo
w","Medium","High"))
df<-data.frame(x)
df

执行上述脚本后,会生成以下输出(由于随机化,此输出会在您的系统上有所不同):

    x
1 Medium
2 Medium
3 Low
4 Medium
5 Low
6 Medium
7 High
8 Low
9 Medium
10 High
11 Medium
12 High
13 Medium
14 Medium
15 Low
16 Low
17 Low
18 Medium
19 Low
20 Medium

检查数据框df的结构

使用str函数检查数据框df的结构:

 在线演示

x<-
factor(sample(c("Low","Medium","High"),20,replace=TRUE),order=TRUE,levels=c("Lo
w","Medium","High"))
df<-data.frame(x)
str(df)

输出

'data.frame': 20 obs. of 1 variable:
$ x: Ord.factor w/ 3 levels "Low"<"Medium"<..: 2 2 1 2 1 2 3 1 2 3 ...

在这里我们可以看到x是一个有序因子,这意味着它是一个有序变量。

更新于:2021年8月13日

3K+浏览量

启动您的职业生涯

通过完成课程获得认证

开始
广告