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

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 comentarios

Are you sure you want to do this with a for-loop?
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!

Iniciar sesión para comentar.

 Respuesta aceptada

for i=1
[b,a]=ndgrid(B,A);
C=[a(:),b(:)]
end

1 comentario

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!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Productos

Preguntada:

el 13 de Sept. de 2018

Comentada:

el 14 de Sept. de 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by