2012-08-14 6 views
6

私は配列の最後の要素にインデックスを付ける最も効率的な方法(すなわち、より小さなキーを押した)を探しています。配列の最後の項目を選択する最も効率的な方法は?

a <- c(1,2,3) 
n <- length(a) 
b <- a[n] 

のようなものを使用すべきではない

その後、私は、単一のコマンドを使用したいと思います。私は短い何かが存在しない場合、私は疑問に思う

b <- a[length(a)] 

しかしを使用することができ、上記の例で

a <- seq(from = 1, to = 10, by = 1) 
b <- a[3:length(a)] 

のような私は、配列の一部を選択したい

レッツは、それを行うための短い方法はありますか?

答えて

9

を、あなたが使用することができます。

> tail(a, 1) 
[1] 3 

ないことが本当に短いとしての資格ということ。

> tail(a, -2) 
[1] 3 4 5 6 7 8 9 10 

しかし、一般的に第二例えば

。いいえ、それより短いものはありません。 Rには、配列の終わりまで評価する何らかの意味で、ベクトルまたは配列の終わりにインプレース演算子または構文的な砂糖がありません。つまり、length()を使用することができます。

6

利用tail()オブジェクトの末尾を取得します、デフォルトで

x <- 1:100 

tail()戻っ6つの要素...

tail(x) 
[1] 95 96 97 98 99 100 

...しかし、あなたはそれを変更することができます。

tail(x, 10) 
[1] 91 92 93 94 95 96 97 98 99 100 

同様に、head()は最初の要素を取得することがあります:最初のケースでは

head(x, 7) 
[1] 1 2 3 4 5 6 7 
+1

この作業をカラムで行うには良い方法がありますか? '?tail'は2Dの場合に行をつかむと言っています。 –

関連する問題