如何在R的data.table对象的一列中将大于阈值的值转换为1?


为了在R的data.table对象的数据框中将大于阈值的值转换为1,我们可以按照以下步骤操作:

  • 首先,创建一个data.table对象。

  • 然后,使用ifelse函数将大于阈值的值转换为1。

示例

创建data.table对象

让我们创建一个如下所示的data.table对象:

library(data.table)
x<-runif(25,1,2)
DT<-data.table(x)
DT

输出

执行上述脚本后,将生成以下输出(由于随机化,此输出可能会因您的系统而异):

       x
1:  1.122051
2:  1.355193
3:  1.058128
4:  1.817999
5:  1.585387
6:  1.789302
7:  1.227816
8:  1.099774
9:  1.442783
10: 1.014045
11: 1.639609
12: 1.090935
13: 1.801839
14: 1.237378
15: 1.988733
16: 1.000113
17: 1.670561
18: 1.444453
19: 1.797164
20: 1.079578
21: 1.888196
22: 1.635946
23: 1.986531
24: 1.401219
25: 1.902608
      x

将大于阈值的值转换为1

使用ifelse函数将data.table对象x列中大于阈值的值转换为1:

library(data.table)
x<-runif(25,1,2)
DT<-data.table(x)
DT$x<-ifelse(DT$x>1.5,1,DT$x)
DT

输出

       x
1:  1.122051
2:  1.355193
3:  1.058128
4:  1.000000
5:  1.000000
6:  1.000000
7:  1.227816
8:  1.099774
9:  1.442783
10: 1.014045
11: 1.000000
12: 1.090935
13: 1.000000
14: 1.237378
15: 1.000000
16: 1.000113
17: 1.000000
18: 1.444453
19: 1.000000
20: 1.079578
21: 1.000000
22: 1.000000
23: 1.000000
24: 1.401219
25: 1.000000
      x

更新于:2021年11月11日

130 次浏览

启动您的职业生涯

通过完成课程获得认证

开始学习
广告