2017-02-08 7 views
0

У меня есть вектор/или это может быть массив:Как извлечь различные значения/элементы матрицы или массива без повторения?

A = [1,2,3,4,5,1,2,3,4,5,1,2,3] 

Я хочу, чтобы извлечь существующие различные значения/элементы этого вектора, не повторяя:

1,2,3,4,5 
B= [1,2,3,4,5] 

Как я могу извлечь его?

Я был бы признателен за любую помощь, пожалуйста,

+1

'B = уникальный (A)' –

ответ

2

Try это,

A = [1,2,3,4,5,1,2,3,4,5,1,2,3] 
y = unique(A) 

B = unique(A) возвращает то же значение, что и в, но без повторений. Полученный вектор сортируется в порядке возрастания. A может быть массивом ячеек строк.

B = unique(A,'stable') делает то же, что и выше, но без сортировки.

B = unique(A,'rows') returns the unique rows of A`.

[B,i,j] = unique(...) также возвращает индекс векторов i и j таким образом, что B = A(i) и A = B(j) (или B = A(i,:) и A = B(j,:)).


Ссылка: http://cens.ioc.ee/local/man/matlab/techdoc/ref/unique.html

Документация: https://uk.mathworks.com/help/matlab/ref/unique.html

+0

'unique' сам сортирует –

+0

позвольте мне ow, если это поможет @Agata Krasoń – zillani

+0

@Sardar_Usama Вы правы! – zillani

0

ответы ниже, являются правильными, но если пользователь не хочет, чтобы сортировать данные, вы можете использовать unique с параметром stable

A = [1,2,3,4,5,1,2,3,4,5,1,2,3] 
B = unique(A,'stable')