1

writeBin を連携させるのに問題があります。変数の値を引数の1つとして受け入れるようにしようとしています:

以下の作品:

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 に答える