how to find indices of duplicates in array and save results on a structure
2 views (last 30 days)
Show older comments
Hi, I want to know how to find indices of duplicaes in a given array and save results on a structure.
For example, array A is given as below:
A=[1;5;2;5;3;3;4;1;2;1];
so there are duplicates of values: 1,2,3,5 , and I want to find the indices of duplicates directly without using 'find'
I manually wrote down on structure as below, but how can I write the code to save the indices of duplicates on a structure?
So those are my two questions.. 1) how to find indices of duplicates in array , and 2) how to save results on a structure
Many thanks:)
0 Comments
Accepted Answer
Stephen23
on 28 May 2022
A = [1;5;2;5;3;3;4;1;2;1];
[U,~,X] = unique(A);
V = 1:numel(A);
C = accumarray(X,V(:),[],@(v){v});
S = struct('value',num2cell(U),'indices',C)
Checking:
S.value
S.indices
0 Comments
More Answers (0)
See Also
Categories
Find more on Structures 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!