9

1:85 のシーケンスを作成したいのですが、seq(1,85,5) の数字を除外します。このように:

2 3 4 5 7 8 9 10 12 13 etc..

Rでこれを行う効率的な方法は何でしょうか?

どうもありがとう!

4

4 に答える 4

14

使用setdiff:

setdiff(1:85,seq(1,85,5))
 [1]  2  3  4  5  7  8  9 10 12 ...
于 2013-06-26T12:14:35.293 に答える
6

除外したい数値を一般化できない場合は、@HongOoi または @James の回答が最適です。しかし、それらがいくつかの数学的テストで記述できれば、Filterより効率的になります。

Filter(function(x) x %% 5 != 1, 1:85)
于 2013-06-26T12:33:23.813 に答える
5
(1:85)[-seq(1, 85, 5)]

それともあまりにも明白/非効率的ですか?

于 2013-06-26T12:14:56.767 に答える