如何在 R 中拆分拆分的 data.table 对象?
要data.table在 R 中拆分拆分对象,我们可以按照以下步骤操作 -
首先,创建一个data.table对象。
然后,使用拆分功能拆分data.table对象。
之后,使用do.call函数和 rbind 函数解开数据帧。
示例
创建data.table对象
让我们创建一个data.table对象,如下所示 -
library(data.table)输出结果Grp<-sample(LETTERS[1:4],25,replace=TRUE)
Score<-sample(1:50,25)
DT<-data.table(Grp,Score)
DT
执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-
Grp Score1: D 13
2: D 25
3: A 21
4: A 1
5: C 4
6: B 16
7: A 28
8: A 6
9: C 26
10: D 2
11: A 47
12: D 38
13: A 49
14: B 31
15: A 36
16: C 41
17: D 24
18: C 27
19: C 34
20: D 7
21: D 42
22: C 14
23: B 44
24: B 30
25: D 19
Grp Score
拆分data.table对象
使用拆分功能拆分data.table对象 -
library(data.table)输出结果Grp<-sample(LETTERS[1:4],25,replace=TRUE)
Score<-sample(1:50,25)
DT<-data.table(Grp,Score)
new_DT<-split(DT,DT$Grp)
new_DT
$AGrp Score
1: A 21
2: A 1
3: A 28
4: A 6
5: A 47
6: A 49
7: A 36
$B
Grp Score
1: B 16
2: B 31
3: B 44
4: B 30
$C
Grp Score
1: C 4
2: C 26
3: C 41
4: C 27
5: C 34
6: C 14
$D
Grp Score
1: D 13
2: D 25
3: D 2
4: D 38
5: D 24
6: D 7
7: D 42
8: D 19
拆分data.table对象
使用do.call函数和 rbind 函数解开data.table对象 DT -
library(data.table)输出结果Grp<-sample(LETTERS[1:4],25,replace=TRUE)
Score<-sample(1:50,25)
DT<-data.table(Grp,Score)
new_DT<-split(DT,DT$Grp)
do.call("rbind",new_DT)
Grp Score1: A 21
2: A 1
3: A 28
4: A 6
5: A 47
6: A 49
7: A 36
8: B 16
9: B 31
10: B 44
11: B 30
12: C 4
13: C 26
14: C 41
15: C 27
16: C 34
17: C 14
18: D 13
19: D 25
20: D 2
21: D 38
22: D 24
23: D 7
24: D 42
25: D 19
Grp Score
以上是 如何在 R 中拆分拆分的 data.table 对象? 的全部内容, 来源链接: utcz.com/z/322644.html