Map a matrix 300 cells of matrices to a 2d matrix

1 visualizzazione (ultimi 30 giorni)
I have a matrix M1 of size 1x300, which contains in each column, on the first and only row a cell with a matrix of size 28x28.
I want to convert each 28x28 matrix to a column vector and store them all as columns in a new matrix, so that the i-th column of the resulting matrix will represent the i-th column of the original matrix, but instead of cells with matrices, I'll have column vectors representing the smaller matrices.

Risposta accettata

KL
KL il 20 Nov 2017
Modificato: KL il 20 Nov 2017
dummy = repmat({reshape(1:784,28,28)},1,300);
C = cell2mat(cellfun(@(x) [x(:)],dummy,'uni',0));
or simpler,
C = reshape([dummy{:}],28*28,[]);

Più risposte (0)

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by