如何按另一列中的值数重复 R 中 data.table 对象的列值?
要按data.table另一列中的值重复对象的列值,我们可以按照以下步骤操作-
首先,创建一个data.table对象。
然后,使用rep函数和cbind函数通过另一列中的值重复矩阵中的列值。
示例
创建data.table对象
让我们创建一个data.table对象,如下所示-
library(data.table) x<-1:10 y<-sample(1:5,10,replace=TRUE) DT<-data.table(x,y) DT输出结果
执行时,上述脚本生成以下内容output(thisoutputwillvaryonyoursystemduetorandomization)-
x y 1: 1 2 2: 2 4 3: 3 1 4: 4 5 5: 5 3 6: 6 4 7: 7 2 8: 8 5 9: 9 1 10: 10 1
按另一列中的值重复列值
使用rep函数和cbind函数通过列y中的值重复data.table对象DT中的列x值-
library(data.table) x<-1:10 y<-sample(1:5,10,replace=TRUE) DT<-data.table(x,y) cbind(rep(DT$x,times=DT$y),rep(DT$y,times=DT$y))输出结果
[,1] [,2] [1,] 1 2 [2,] 1 2 [3,] 2 4 [4,] 2 4 [5,] 2 4 [6,] 2 4 [7,] 3 1 [8,] 4 5 [9,] 4 5 [10,] 4 5 [11,] 4 5 [12,] 4 5 [13,] 5 3 [14,] 5 3 [15,] 5 3 [16,] 6 4 [17,] 6 4 [18,] 6 4 [19,] 6 4 [20,] 7 2 [21,] 7 2 [22,] 8 5 [23,] 8 5 [24,] 8 5 [25,] 8 5 [26,] 8 5 [27,] 9 1 [28,] 10 1