how to simplify the command line that generates cell array

I am having C = 6×1 cell array
{2×1 double}
{2×1 double}
{2×2 double}
{2×2 double}
{2×3 double}
{2×3 double}
using C = {rand(2,1);rand(2,1);rand(2,2);rand(2,2);rand(2,3);rand(2,3);}
is there any simplified way to write the above command.

 Accepted Answer

No, there is no simplified way to write it. You can automate it in some ways, but the automated versions are more complex.
C = arrayfun(@(N) rand(2,N), repelem((1:3).',2), 'uniform', 0)
C = 6×1 cell array
{2×1 double} {2×1 double} {2×2 double} {2×2 double} {2×3 double} {2×3 double}

More Answers (0)

Categories

Tags

Community Treasure Hunt

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

Start Hunting!