1

我无法让 writeBin 合作。我试图让它接受一个变量的值作为它的参数之一:

以下作品:

writeBin(ACTUAL.VARIABLE, paste0(RSTATDATA,".raw"),size = 4, endian = .Platform$endian)

但是我想要做的是用一个变量名替换“ACTUAL.VARIABLE”(这是我已经在 R 中创建的统计信息的向量),其内容是名称“ACTUAL.VARIABLE”。

我要做的是创建一个函数,允许用户输入特定的变量名(使用 readline),然后我的函数将其写为 bin 文件。就像是:

RSTATDATA<-readline("enter the name of the R variable that has your stats (must be a vector): ")
writeBin(RSTATDATA, paste0(RSTATDATA,".raw"),size = 4, endian = .Platform$endian)

不幸的是,这不起作用(只写出 41 个字节,这比我要写的向量小得多)。我在想这里缺少一些语法,因为我不明白为什么放置实际的 R 对象名称有效,但放置一个包含 R 对象名称的变量却没有。

感谢您的任何建议...

4

1 回答 1

0

我不确定你的问题,但我认为你需要使用get,试试这个:

  writeBin(get(RSTATDATA), paste0(RSTATDATA,".raw"),
           size = 4, endian = .Platform$endian)

所以你的函数必须是这样的:

  my.writeBin <- function(RSTATDATA){
    filename <- paste0(RSTATDATA,".raw")
    zz <- file(filename, "wb")
    writeBin(get(RSTATDATA), zz)
    close(zz)
  }
于 2013-03-16T07:42:31.397 回答