How to create a cell array identical in size, but containing cell position in each cell?

6 visualizzazioni (ultimi 30 giorni)
I have a cell array, with different number of elements in each cell. I convert the cells to a 1xn matrix with
For example,
A = {[1,2,3,4]; [1,2,5]; [5,6,1,2,4]; [44]}
A = 4×1 cell array
{[ 1 2 3 4]} {[ 1 2 5]} {[5 6 1 2 4]} {[ 44]}
I want to create a new cell array which is identical in size to A containing cell number as element sof each of the cell such that the output would look like -
B = {[1,1,1,1,]; [2,2,2]; [3,3,3,3,3]; [4]}
B = 4×1 cell array
{[ 1 1 1 1]} {[ 2 2 2]} {[3 3 3 3 3]} {[ 4]}
How can I make this?

Risposta accettata

G A
G A il 1 Dic 2021
A = {[1,2,3,4]; [1,2,5]; [5,6,1,2,4]; [44]}
B = cell(size(A));
for k = 1:length(A)
B{k} = repmat(k,1,length(A{k}));
end

Più risposte (0)

Categorie

Scopri di più su Cell Arrays in Help Center e File Exchange

Prodotti


Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by