Create a Cell Array of Vectors populated with ones

3 visualizzazioni (ultimi 30 giorni)
Hi all,
I 'd like to create a cell array made of x columns and y rows (in my case 10 and 3, respectively), where each x,y position contains a vector of 1x200 NaN. I'd like to find something smarter and nicer than just something like this:
res={nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) ;nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200); nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200) nan(1,200)};
Thank you so much to the community.
Leonardo
  1 Commento
Guillaume
Guillaume il 15 Mag 2019
If all the vectors in the cell array are the same size, why not use a matrix instead of a cell array. It will make all subsequent operations much easier.
I.e. create a 10x3x200 matrix instead:
res = nan(10, 3, 200);

Accedi per commentare.

Risposta accettata

Jos (10584)
Jos (10584) il 15 Mag 2019
repmat also works for cell arrays
C = repmat({nan(1, 200)}, 10, 3)
  1 Commento
Leonardo Venturelli
Leonardo Venturelli il 15 Mag 2019
Modificato: Leonardo Venturelli il 23 Mag 2019
Thank you so much Jos,
I hadn't tried the repmat function to solve this, but it actually works perfectly.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by