How can I remove a word from an array?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Marcela Ruiz de Chávez
le 4 Nov 2013
Commenté : Marcela Ruiz de Chávez
le 4 Nov 2013
This is what I have:
xA=[0 4 2 1]; wA=struct('name',{'person1' 'person2' 'person3' 'person4'},'num',num2cell(xA)); peopleA={wA.name}; numA=[wA.num]; [idxA,idxA]=max(numA); primeroA=peopleA{idxA} numAA=numA(numA~=max(numA)); [idxxA,idxxA]=max(numAA); segundoA=peopleA{idxxA}
I want to remove the maximum of the word, that is, the word contained in primeroA, in order to be able to calculate the second maximum without the words being rearrenged or altered.
0 commentaires
Réponse acceptée
Andrei Bobrov
le 4 Nov 2013
xA=[0 4 2 1];
name={'person1' 'person2' 'person3' 'person4'};
[a,b] = unique(xA);
out = name(b(end-1));
0 commentaires
Plus de réponses (1)
Azzi Abdelmalek
le 4 Nov 2013
Modifié(e) : Azzi Abdelmalek
le 4 Nov 2013
xA=[0 4 2 1];
wA=struct('name',{'person1' 'person2' 'person3' 'person4'},'num',num2cell(xA));
peopleA={wA.name};
numA=[wA.num];
[idxA,idxA]=sort(numA,'descend');
primeroA=peopleA{idxA(1)}
segundoA=peopleA{idxA(2)}
terceroA=peopleA{idxA(3)}
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!