如何在 R 中重复整个 data.table 对象?


若要在 R 中重复整个 data.table 对象,我们可以按照以下步骤操作 −

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

  • 然后,使用 rep 函数来重复 data.table 对象。

示例

创建 data.table 对象

我们创建一个 data.table 对象,如下所示 −

library(data.table)
x<-rpois(20,2)
y<-rpois(20,5)
z<-rpois(20,2)
DT<-data.table(x,y,z)
DT

输出

执行上述脚本后,会生成以下输出(此输出在不同系统上可能因随机化而有所不同)−

    x y  z
1:  3 3  4
2:  2 5  0
3:  2 6  1
4:  1 4  1
5:  3 6  1
6:  2 5  1
7:  1 1  3
8:  4 4  2
9:  2 3  1
10: 2 5  3
11: 2 4  2
12: 3 11 1
13: 0 3  2
14: 1 4  3
15: 4 4  1
16: 3 6  3
17: 1 3  2
18: 2 5  3
19: 1 1  1
20: 1 7  5

重复 data.table 对象

使用 rep 函数重复 data.table 对象 DT 两次 −

library(data.table)
x<-rpois(20,2)
y<-rpois(20,5)
z<-rpois(20,2)
DT<-data.table(x,y,z)
DT[rep(1:nrow(DT),2),]

输出

    x y  z
1:  3 3  4
2:  2 5  0
3:  2 6  1
4:  1 4  1
5:  3 6  1
6:  2 5  1
7:  1 1  3
8:  4 4  2
9:  2 3  1
10: 2 5  3
11: 2 4  2
12: 3 11 1
13: 0 3  2
14: 1 4  3
15: 4 4  1
16: 3 6  3
17: 1 3  2
18: 2 5  3
19: 1 1  1
20: 1 7  5
21: 3 3  4
22: 2 5  0
23: 2 6  1
24: 1 4  1
25: 3 6  1
26: 2 5  1
27: 1 1  3
28: 4 4  2
29: 2 3  1
30: 2 5  3
31: 2 4  2
32: 3 11 1
33: 0 3  2
34: 1 4  3
35: 4 4  1
36: 3 6  3
37: 1 3  2
38: 2 5  3
39: 1 1  1
40: 1 7  5
    x y  z

更新于: 2021 年 11 月 8 日

686 次浏览

开启您的职业生涯

完成课程,获得认证

开始
广告