随机选择XDF

时间:2016-03-03 13:32:13

标签: r random-sample revolution-r

我尝试了很多替代方案,包括我们可以在Revo网站上找到的方案

xform <- function(data) { 
    data$.rxRowSelection <- as.logical(rbinom(nr, 1 , 0.5))
    return(data)
}
rxDataStep(inData = "two_vars.xdf", outFile = "testSample",
           transformFunc = xform , overwrite = TRUE)

来自nr

info$numRows rxGetInfo("two_vars.xdf")
rxDataStep(inData = "two_vars.xdf", outFile = "testSample",
           rowSelection = as.logical(rbinom(nr, 1, 0.5)), overwrite = TRUE)
  

错误:分析的样本数据集没有变量。   doTryCatch出错(return(expr),name,parentenv,handler):      的std ::例外

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

试试这个:

xform <- function(data) { 
    data$.rxRowSelection <- as.logical(rbinom(.rxNumRows, 1 , 0.5))
    return(data)
}
rxDataStep(inData = "two_vars.xdf", outFile = "testSample",
           transformFunc = xform , overwrite = TRUE)

或等效地:

rxDataStep(inData = "two_vars.xdf", outFile = "testSample",
           rowSelection = as.logical(rbinom(.rxNumRows, 1 , 0.5)), 
           overwrite = TRUE)

我认为你所做的事情有两个问题。

  1. 您传递了总行数,并且您需要该特定块中的行数。 (不是您当前错误的原因)
  2. 您需要通过transformObjects将对象传递到转换环境中才能使用它们。