Effacer les filtres
Effacer les filtres

Extract and realign cells into new cell

1 vue (au cours des 30 derniers jours)
Xh Du
Xh Du le 4 Juil 2017
Réponse apportée : KSSV le 4 Juil 2017
Hi all,
I have a cell array 'cellA' which contains cell:
cellA =
{2x1 cell} {2x1 cell} {2x1 cell}
{2x1 cell} {2x1 cell} {2x1 cell}
cellA{1}
ans =
[12x2 double]
[30x2 double]
All arrays in cellA are same size. Now what I want is to extract each double array and put them in a new cell, so I will have 2 new cells:
cellB =
[12x6 double]
[12x6 double]
cellC =
[30x6 double]
[30x6 double]
I know I can probably write a for loop to do this, but is there a faster, vectorized way?
Thanks!

Réponse acceptée

KSSV
KSSV le 4 Juil 2017
A = cell(2,3) ;
for i = 1:2
for j = 1:3
A{i,j}{1,1} = rand(12,2) ;
A{i,j}{2,1} = rand(30,2) ;
end
end
B = [A{:}] ;
B1 = mat2cell(cell2mat(reshape(B(1,:),2,3)),[12 12]);
B2 = mat2cell(cell2mat(reshape(B(2,:),2,3)),[30 30]);

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by