1

インデックス ベクトルの前に - (マイナス記号) を使用して、ベクトルから値を削除しています。このような:

scores <- scores[-indexes.to.delete]

indexes.to.deleteベクトルが空である場合があります。つまり、N/A です。したがって、scoresベクトルは変更されないままになります。ただし、空のscoresときに空のベクトルを取得してindexes.to.deleteいます。

例:

x <- c(1, 2, 3);
y <- c(4, 5, 6);
indexes.to.delete <- which(y < x); # will return empty vector
y <- y[-indexes.to.delete]; # returns empty y vector, but I want y stay untouched

が空かどうかをチェックする if ステートメントをコーディングできますindexes.to.deleteが、もっと簡単な方法があるかどうか疑問に思っています。

4

1 に答える 1

3

たぶん使用します。

x <- c(1, 2, 3)
y <- c(4, 5, 6)
y[!y<x]
> y[!y<x]
[1] 4 5 6

x <- c(1, 2, 3)
y <- c(4, 1, 6)
> y[!y<x]
[1] 4 6
>
于 2012-08-11T15:44:49.787 に答える