Is there something like 'array colon'? in other words how can I apply colon operator to all the elements of an array (please read the text below so my question will make sense)?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
A = [1 10 16 23];
A-3:A+2 will result in [-2,-1,0,1,2,3]; In other words colon operates only on the first element of array A. However I want to apply A-3:A+2 on all the elements of A; I know I can get this by a loop, like :
u=[];for i=1:4, u=[u,A(i)-3:A(i)+2]; end
However I wonder if there is a way to do this without using loop. (The actual array I am working with is too long to loop through it.)
This sounds like a super simple question but I have no ides how to do it in a simple way (other than looping).
I so much appreciate any help.
0 commentaires
Réponse acceptée
Plus de réponses (3)
Azzi Abdelmalek
le 28 Oct 2012
Modifié(e) : Azzi Abdelmalek
le 28 Oct 2012
do you mean a division
A = [1 10 15 23];
(A-3)./(A+2 )
4 commentaires
Azzi Abdelmalek
le 28 Oct 2012
Modifié(e) : Azzi Abdelmalek
le 28 Oct 2012
I'm not sur what you need
A = [1 10 15 23];
unique(cell2mat(arrayfun(@(x) x-3:x+2,A,'un',0)))
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!