R Data.Table:随机,独特的测试&列表从主表创建

时间:2016-01-28 00:07:39

标签: r data.table

通过可用的data.table doc&与数据框相关的SO相关问题响应,如何有效地从单独的'foo.train'&的主数据表(即:'foo')中分离出70%,30%。为了预测建模的目的,'foo.test'数据表中的行是唯一的? (注意,不允许使用插入符或dplyr)

需要Gennaro Tedesco代码响应的附加解决方案:

https://stackoverflow.com/a/33201094/3741230

感谢。

1 个答案:

答案 0 :(得分:1)

全部谢谢。

在此回复的最后是需要的代码灵感: https://stackoverflow.com/a/32511327/3741230

> inTrain <- MyDT[,sample(.N, floor(.N*.75))]
> Train <- foo.dt[inTrain]
> Test <- foo.dt[-inTrain]

> dim(foo.dt)
[1] 100000      6
> dim(Train)
[1] 70000     6
> dim(Test)
[1] 30000     6

(请注意,第一行避免了MyDT变量符号的不必要重复,并且还将单个数字.N传递给sample()以提高效率,而不是不必要的1:.N长矢量。)