How to print duplicate (repeated) value from an array?
1 view (last 30 days)
Show older comments
Dr. Hareesha N G
on 4 Jan 2018
Commented: Image Analyst
on 26 Jan 2018
Dear experts,
I have to print the duplicate (repeated) value from the following array. Please help me.
104.96
81.01
-35.21
-150.76
145.22
104.96
20.62
-90.79
2 Comments
Accepted Answer
Birdman
on 4 Jan 2018
Edited: Birdman
on 4 Jan 2018
More simpler way:
[C,~,~]=unique(v);
val=sum(v)-sum(C)
Edit after Image Analyst's warning:(works for any situation)
[C,~,idx]=unique(v,'stable');
n=accumarray(idx(:),1);
vals=C(find(n~=1))
3 Comments
Image Analyst
on 4 Jan 2018
Hareesha, it looks like you accepted Birdman's answer, and that doesn't require the stats toolbox, so go with that.
More Answers (2)
Image Analyst
on 4 Jan 2018
Edited: Image Analyst
on 4 Jan 2018
Here is one way:
v = [...
104.96
81.01
-35.21
-150.76
145.22
104.96
20.62
-90.79]
distances = pdist2(v, v) % In Stats toolbox
% Find where distances = 0
[rows, columns] = find(distances == 0)
for k = 1 : length(rows)
if rows(k) ~= columns(k) % Ignore diagonals
fprintf('Element at row %d (%f) is a repeat.\n', rows(k), v(rows(k)));
end
end
It shows:
Element at row 6 is a repeat.
Element at row 1 is a repeat.
Poornimadevi P
on 26 Jan 2018
hi, please help me to find duplication in sequence of image and send me a code .
See Also
Categories
Find more on Image Processing Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!