如何在R中随机化data.table对象的全部列的值?
要随机化R中data.table对象的全部列的值,我们可以按照以下步骤操作:
- 首先,创建一个data.table对象。
- 然后,使用sample函数和lapply来随机化data.table对象的列。
创建数据框
让我们创建一个如下所示的数据框:
library(data.table) x<-rpois(20,5) y<-rpois(20,10) z<-rpois(20,8) DT<-data.table(x,y,z) DT
执行上述脚本后,将生成以下输出(由于随机化,此输出在您的系统上会有所不同):
x y z 1: 6 7 7 2: 7 11 7 3: 7 16 6 4: 7 8 11 5: 7 12 7 6: 8 10 2 7: 7 9 4 8: 4 12 6 9: 5 13 9 10: 7 8 7 11: 8 10 7 12: 2 12 8 13: 3 6 4 14: 7 9 9 15: 2 9 9 16: 6 17 10 17: 6 3 8 18: 7 14 4 19: 6 10 8 20: 7 15 8
随机化data.table对象中的列值
使用lapply和sample函数随机化DT的列值:
library(data.table) x<-rpois(20,5) y<-rpois(20,10) z<-rpois(20,8) DT<-data.table(x,y,z) DT[,lapply(.SD,sample)]
输出
x y z 1: 7 9 9 2: 8 13 6 3: 7 10 9 4: 7 15 4 5: 7 14 11 6: 7 10 7 7: 5 8 2 8: 4 12 7 9: 8 12 8 10: 6 6 7 11: 6 10 7 12: 6 7 7 13: 2 12 4 14: 7 11 6 15: 2 16 10 16: 7 8 8 17: 3 3 8 18: 7 9 9 19: 6 9 4 20: 7 17 8
广告