finding an item in an array
Info
Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.
Ältere Kommentare anzeigen
Hello,
I have an array of five items for example 1 2 2 2 4
How can I find the positions of the repeated items, i.e 2 2 2?
Thanks
Antworten (7)
Aldin
am 20 Mär. 2012
Here is my solution:
a = [ 1 2 2 2 4 ];
find(a==2)
ans =
2 3 4
2 Kommentare
Daniel Shub
am 20 Mär. 2012
+1 for simplicity. While this requires knowing what number is repeated and will fail if multiple numbers are repeated, it does answer the question.
Aldin
am 20 Mär. 2012
HERE IS THE COMBINATION OF Daniels AND my CODE:
x = [1 2 2 2 4 5 5 3 3 2];
a = unique(x);
[~,b] = unique(x, 'first');
[~,c] = unique(x, 'last');
ismember(x, a(b~=c))
the result will be: 0 1 1 1 0 1 1 1 1 1
(my code) if you want to get index:
find(ans==1)
result:
ans =
2 3 4 6 7 8 9 10
Jonathan Sullivan
am 20 Mär. 2012
0 Stimmen
MURTADHA ALDEER
am 20 Mär. 2012
0 Stimmen
1 Kommentar
Jonathan Sullivan
am 20 Mär. 2012
Make sure you download the function. It is not built into MATLAB.
MURTADHA ALDEER
am 20 Mär. 2012
0 Stimmen
3 Kommentare
Jonathan Sullivan
am 20 Mär. 2012
There's a button in the top right that says "Download All." Click that one.
MURTADHA ALDEER
am 22 Mär. 2012
Oleg Komarov
am 25 Mär. 2012
Diret link to download: http://www.mathworks.com/matlabcentral/fileexchange/28113-findseq?controller=file_infos&download=true
FEX page for findseq: http://www.mathworks.com/matlabcentral/fileexchange/28113-findseq
Daniel Shub
am 20 Mär. 2012
One of my uglier solutions ...
x = [1 2 2 2 4];
a = unique(x);
[~,b] = unique(x, 'first');
[~,c] = unique(x, 'last');
ismember(x, a(b~=c))
Aldin
am 21 Mär. 2012
HERE IS THE COMBINATION OF Daniels AND my CODE:
x = [1 2 2 2 4 5 5 3 3 2];
a = unique(x);
[~,b] = unique(x, 'first');
[~,c] = unique(x, 'last');
ismember(x, a(b~=c))
the result will be: 0 1 1 1 0 1 1 1 1 1
(my code) if you want to get index:
find(ans==1)
result: ans = 2 3 4 6 7 8 9 10
MURTADHA ALDEER
am 22 Mär. 2012
1 Kommentar
Daniel Shub
am 25 Mär. 2012
If your question is now answered, then accept your answer and upvote anyone that helped.
Diese Frage ist geschlossen.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!