Categorical cell array reshaping

조회 수: 10 (최근 30일)
MB Sylvest
MB Sylvest 2018년 8월 18일
댓글: Image Analyst 2019년 7월 11일
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
MB Sylvest
MB Sylvest 2018년 8월 18일
Yes, this is a 2x7 cell array of 1x1 categorical arrays
Image Analyst
Image Analyst 2019년 7월 11일
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

댓글을 달려면 로그인하십시오.

채택된 답변

Guillaume
Guillaume 2018년 8월 18일
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.
  댓글 수: 1
MB Sylvest
MB Sylvest 2018년 8월 18일
Cheers this work great

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Yuvaraj Venkataswamy
Yuvaraj Venkataswamy 2018년 8월 18일
if true
X=your_categoricalArray;
Y=double(X); % your answer
end

카테고리

Help CenterFile Exchange에서 Matrices and Arrays에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by