how to perform this matrix manupulation..?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
harshal j
le 10 Avr 2016
Commenté : harshal j
le 10 Avr 2016
hi, I have a row matrix eg [30,0,0,0,0,10,0,0,0,0,30,30,30,0,0,0,0,0,10....] I have to consider first element i.e 30 (and label it by 'a') then I have to discard the elements between 30 and 10. then I have to consider first 10 (and label it by 'b'),again I want to discard the elements between the 10 and last 30 ( also want to discard the first two elements whose value is 30 and consider the last 30(and label it by 'c') ) I want to repeat the same steps for the entire row matrix whose size is 1x2000. I don't know how to do this. Please help me to write this matrix logic. Thanks in advance
0 commentaires
Réponse acceptée
Azzi Abdelmalek
le 10 Avr 2016
Modifié(e) : Azzi Abdelmalek
le 10 Avr 2016
Do not label them with different variables, just store them in a cell array
5 commentaires
Azzi Abdelmalek
le 10 Avr 2016
v=[30,0,0,0,0,10,0,0,0,0,30,30,30,0,0,0,0,0,10];
w=v~=0;
ii=strfind([0 w],[0 1]);
out=arrayfun(@(x) v(x),ii,'un',0);
celldisp(out)
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Matrix Indexing dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!