1

こんにちは、複数のコマンドの場合の Rserve の戻り値の型がよくわかりません。例えば。

a<-rnorm(10);a[4];rnorm(3)

Rserve は最後に評価されたステートメント、つまり rnorm(3) のみを返すようです。Rserve で 3 つの出力値をすべて取得することは可能ですか?

また、Rで最後に評価された式の戻り値を正確に取得できる方法を知りたいですか? Rにはperlのようにそれを取得するための特殊文字はありますか?

4

1 に答える 1

3

これは通常の R の動作であり、関数で得られる動作に匹敵します。例えば:

spam = function(x, y) {
  z = x + y
}

ここで R は を返しますz。これが最後に実行された操作だからです。すべてのオブジェクトを取得するには、リストを使用できます。

spam = function(x, y) {
  z = x + y
  list(x,y,z)
}

これはあなたの場合にうまくいくはずです:

a<-rnorm(10);list(a,a[4],rnorm(3))

さらに、最後に実行された式を抽出する方法はわかりませんが、とにかく使用することはお勧めしません。この種の構文は、プログラムの流れを読みにくくするだけで、時間の節約にもなりません。

于 2012-05-02T11:42:10.320 に答える