2015-04-16 35 views
1

我想選擇一個矢量的前5個元素那些大於某個閾值的元素。例如:結合矢量索引和查詢

v = c(10, 11, 2, 8, 5, 2, 10) 
v[1:5] # return the first 5 elements 
v[which(v>5)] # returns all elements > 5 

如何組合這兩個查詢以返回10,11,2,8,5,10?這是第一個5個元素,加上10,因爲大於5

回答

3

我們可以使用union

union(v[1:5], v[which(v>5)]) 

或由@Vlo評論(如果有重複的值)

v[union(1:5, which(v>5))] 
+2

根據OP的要求是什麼,但是數字上的「union」並不涉及重複的值。 'union'on index does:'v [union(1:5,which(v> 5))]' – Vlo

+0

@Vlo感謝您的評論,我沒有想到它。 – akrun

+0

@Vlo謝謝,我確實需要獨特的索引。 –