0

私はベクトルする必要があります

x <- c(2,5,6) # index vector
y <- c(10:20)  # value vector

今、私は v1 で記述された v2 からの値のみを与える関数を書きました。戻り値の例 (11,14,15)

mapIdxToVector <- function(x,y) {
  ret <- c(x);
  for( i in 1:length(x) ) {
    ret[i] <- y[x[i]];
  }
  return(ret);
}

自分の関数を改善するためにRに派手な関数はありますか?

敬具クリスチャン

4

2 に答える 2

3

R が使用されることを意図した方法を利用するだけです。

> y[x]
[1] 11 14 15

これは R マニュアルの概要で説明されています。このドキュメントをざっと読んでおくと、多くの時間を節約できます: http://cran.r-project.org/doc/manuals/r-release/R-intro。 html#Index-vectors

于 2013-02-16T21:09:01.530 に答える
2

ここでループする必要はありません。やるだけ

y[x]

R はベクトルを非常にうまく処理するため、実行できるほとんどすべてのアクションがベクトルをサポートしています。インデックスも同様です。

于 2013-02-16T21:08:17.747 に答える