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 个评论

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!

请先登录,再进行评论。

 采纳的回答

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

1 个评论

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!

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Multidimensional Arrays 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by