Effacer les filtres
Effacer les filtres

How can I create a multidimensional array from two vectors that have different dimensions using a for loop?

8 vues (au cours des 30 derniers jours)
Hi I’m trying to create the following matrix from two vectors
A=1:2
B=4:7
C=[
1 4
1 5
1 6
1 7
2 4
2 5
2 6
2 7]
Using a for loop So far I have
A=1:2
B=4:7
For i=1:2
For j=1:4
C(i,j)= [A(i) B(j)]
End
End
After that I get a dimensional error. Any suggestions?
  2 commentaires
Matt J
Matt J le 13 Sep 2018
Are you sure you want to do this with a for-loop?
Guillermo Naranjo
Guillermo Naranjo le 14 Sep 2018
The arrays I have are 56 elements by 250. So I figured a for loop would be faster. Is there an easier way? Thanks for your answers!

Connectez-vous pour commenter.

Réponse acceptée

Matt J
Matt J le 13 Sep 2018
for i=1
[b,a]=ndgrid(B,A);
C=[a(:),b(:)]
end
  1 commentaire
Guillermo Naranjo
Guillermo Naranjo le 14 Sep 2018
Thanks! this worked perfectly. I guess the need for the For loop is futile at this point. :) I was not aware of the ndgrid function. I appreciate the help!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Multidimensional Arrays 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!

Translated by