Creating loop with two variables

Hello. I am trying to form a loop with two variables. Variable 1 which I call j = 1:12. Variable 2 which I call i = linspace(1,23,12). I am trying to create a cell named target{j} which has 12 different matrices of i:i+1. target{j} = i:i+1 , so that target{1} = 1:2, target{2} = 3:4, target{3} = 5:6, target{4} = 7:8, and so on.... Does anybody know how to do this? It would be great to get some help, thanks!

1 件のコメント

Kevin P Meyer
Kevin P Meyer 2021 年 8 月 11 日
Nevermind I got it.

サインインしてコメントする。

回答 (1 件)

the cyclist
the cyclist 2021 年 8 月 11 日

0 投票

You only really need one loop:
target = cell(size(j))
target = 1×1 cell array
{0×0 double}
for j = 1:12
target{j} = [j j+1];
end
or zero loops:
j = num2cell(1:12);
target = cellfun(@(x)[x x+1],j,'UniformOutput',false)
target = 1×12 cell array
{[1 2]} {[2 3]} {[3 4]} {[4 5]} {[5 6]} {[6 7]} {[7 8]} {[8 9]} {[9 10]} {[10 11]} {[11 12]} {[12 13]}

1 件のコメント

Kevin P Meyer
Kevin P Meyer 2021 年 8 月 11 日
Thank you for your answer. So, I need each cell to be {[1 2]} {[3 4}] {[5 6}], not {[1 2]} {[3 4]}. What I did:
k = linspace(1,23,12)
for j = 1:12
i = k(j)
target{j} = i: i+1
end
This code got me to what I needed. I appreciate your help!

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeLoops and Conditional Statements についてさらに検索

製品

リリース

R2020a

質問済み:

2021 年 8 月 11 日

コメント済み:

2021 年 8 月 11 日

Community Treasure Hunt

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

Start Hunting!

Translated by