如何在 R 中根据列数来分割 data.table 对象行?
若要在 R 的 data.table 对象中根据列数来分割行值,我们可以按照以下步骤执行:
- 首先,创建一个 data.table 对象。
- 然后,使用 apply 函数根据列数来分割 data.table 对象行值。
创建数据框
让我们创建一个数据框,如下所示:
library(data.table) x<-sample(0:9,25,replace=TRUE) y<-sample(0:9,25,replace=TRUE) DT<-data.table(x,y) DT
执行以上脚本后,将生成以下输出(由于随机化,此输出在您的系统上会有所不同):
x y 1: 4 4 2: 6 4 3: 6 4 4: 8 0 5: 1 6 6: 2 3 7: 8 9 8: 2 3 9: 3 7 10: 1 3 11: 2 9 12: 7 3 13: 1 0 14: 9 8 15: 5 6 16: 5 8 17: 0 0 18: 7 3 19: 6 7 20: 5 0 21: 1 3 22: 6 0 23: 5 8 24: 4 7 25: 1 1 x y
根据列数来分割 data.table 对象行值
使用 apply 函数根据列数来分割 DT 的行值:
library(data.table) x<-sample(0:9,25,replace=TRUE) y<-sample(0:9,25,replace=TRUE) DT<-data.table(x,y) DT_new<-t(apply(DT,1, function(x) x/length(x))) DT_new
输出
x y [1,] 2.0 2.0 [2,] 3.0 2.0 [3,] 3.0 2.0 [4,] 4.0 0.0 [5,] 0.5 3.0 [6,] 1.0 1.5 [7,] 4.0 4.5 [8,] 1.0 1.5 [9,] 1.5 3.5 [10,] 0.5 1.5 [11,] 1.0 4.5 [12,] 3.5 1.5 [13,] 0.5 0.0 [14,] 4.5 4.0 [15,] 2.5 3.0 [16,] 2.5 4.0 [17,] 0.0 0.0 [18,] 3.5 1.5 [19,] 3.0 3.5 [20,] 2.5 0.0 [21,] 0.5 1.5 [22,] 3.0 0.0 [23,] 2.5 4.0 [24,] 2.0 3.5 [25,] 0.5 0.5
广告