How to rearrange multiple results of a function without using for loop?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Toan Nguyen
le 13 Juil 2020
Réponse apportée : madhan ravi
le 14 Juil 2020
Hi there,
I created function Array(k) which produces an array of 1xN element for the input k.
N = 115824;
Array = linspace(1*k,k*N,N)
I want to apply that function to an array of k = 1:115824. I tried with for loop it but it's very slow.
for k = 1:N
result(k,1:N) = Array(k);
end
Are there any other way to do this task faster and still give me the result as that for loop?
Thank you
0 commentaires
Réponse acceptée
Rafael Hernandez-Walls
le 14 Juil 2020
Assuming that the initial value of k = 1, then it can be avoided using the
repmat
command as follows (see vector B),
N = 11;
k=1;
Array = linspace(1*k,k*N,N)';
for k=1:N
result(k,1:N) = Array(k);
end
B = repmat(Array,[1 N])
0 commentaires
Plus de réponses (1)
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!