Categorical cell array reshaping

10 visualizzazioni (ultimi 30 giorni)
MB Sylvest
MB Sylvest il 18 Ago 2018
Commentato: Image Analyst il 11 Lug 2019
Dear All
I have a cell array (2x7) of 1x1 categorical arrays that looks like below
1 0 0 0 0 1 0
1 1 1 1 0 1 0
I like to combine this into a 1x7 cell array of categories so it looks like below
1;1 0;1 0;1 0;1 0;0 1;1 0;0
Anyone have any ideas how to do this. Help is highly appreciated.
Cheers Mads
  3 Commenti
MB Sylvest
MB Sylvest il 18 Ago 2018
Yes, this is a 2x7 cell array of 1x1 categorical arrays
Image Analyst
Image Analyst il 11 Lug 2019
Original question in case user edits it away:
Dear All
I have a cell array (2x7) of 1x1 categorical arrays that looks like below
1 0 0 0 0 1 0
1 1 1 1 0 1 0
I like to combine this into a 1x7 cell array of categories so it looks like below
1;1 0;1 0;1 0;1 0;0 1;1 0;0
Anyone have any ideas how to do this. Help is highly appreciated.
Cheers Mads

Accedi per commentare.

Risposta accettata

Guillaume
Guillaume il 18 Ago 2018
this is a 2x7 cell array of 1x1 categorical arrays
example cell array:
yourcellarray = num2cell(categorical([1 0 0 0 0 1 0; 1 1 1 1 0 1 0]))
notice that I first construct a 2x7 categorical array to create the cell array. A categorical array is what you should use instead of a cell array of categorical, so let's convert it back to a simple array. Unfortunately, cell2mat only works with numerical types so we have to be a bit roundabout:
c = reshape([yourcellarray{:}], size(yourcellarray));
You should leave it at that. If you do really want a cell array of column vector (which would be slower and more complicated to use), you can convert c back to a cell array with
num2cell(c, 1)
I wouldn't recommend it.

Più risposte (1)

Yuvaraj Venkataswamy
Yuvaraj Venkataswamy il 18 Ago 2018
if true
X=your_categoricalArray;
Y=double(X); % your answer
end

Categorie

Scopri di più su Matrices and Arrays 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