MATLAB Answers

How to find indices of similar elements in a vector?

15 views (last 30 days)
Syed Fahad Hassan
Syed Fahad Hassan on 1 Aug 2017
Commented: Jan on 1 Aug 2017
I have a vector x=[1 1 2 2 3]. I want to find out the indices of the elements that are similar. The desired output should be something like this. indices = 1,2 & 3,4

Answers (1)

Geoff Hayes
Geoff Hayes on 1 Aug 2017
Syed - try the following
x = [1 1 2 2 3];
groupedData = arrayfun(@(y)find(x == y), unique(x), 'UniformOutput',false);
In the above, we use arrayfun to loop over each unique element of x and apply the function
@(y)find(x == y)
which returns the indices of those elements of x that are identical to that unique element (the input y).


Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!