54

動物園シリーズの最後の100要素を削除するにはどうすればよいですか?

name [-element]表記は知っていますが、セクション全体を差し引くことができません。

4

6 に答える 6

97

head入力が簡単なので、これを使用するのが好きです。他の方法はおそらくより速く実行されます...しかし、私は怠け者で、私のコンピューターはそうではありません. ;-)

x <- head(x,-100)
> head(1:102,-100)
[1] 1 2
于 2010-09-20T17:17:15.450 に答える
17

実際には、はるかに高速な方法があります。

y <- x[1:(length(x)-1)]

コードショー:

> microbenchmark( y <- head(x, -1), y <- x[-length(x)],y <- x[1:(length(x)-1)], times=10000)
 Unit: microseconds
                      expr    min      lq     mean  median      uq      max
          y <- head(x, -1) 71.399 76.4090 85.97572 78.9230 84.2775 2795.076
        y <- x[-length(x)] 53.623 55.5585 65.15008 56.5680 61.1585 2523.141
 y <- x[1:(length(x) - 1)] 25.722 28.2925 36.43029 29.1855 30.4010 2410.975
于 2016-06-08T06:20:36.337 に答える
14

ベクトルをトリミングlength<-する最も効率的な方法は次のとおりです。

> x <- 1:10^5
> length(x)
[1] 100000
> length(x) <- 3
> x
[1] 1 2 3
于 2011-05-04T14:39:51.113 に答える
7

数値インデックスを使用するだけです。

 N <- nrow(X)
 X <- X[1:(N-100-1),]

確認する必要がある場所Nは 100 などです

于 2010-09-20T17:08:15.013 に答える
6

あなたがワンライナーなら

x = x[1:(length(x) -101)]
于 2010-09-20T17:10:47.427 に答える
3

完全を期すための別のワンライナー:

x <- lag(x, 100)[-1:-100]
于 2015-10-06T18:24:17.620 に答える