how to convert the cell to matrix
Show older comments
i have cell as shown in picture and i want to convert it to Array then flip it to be like
array=
00
10
010
110
111
EDIT: Shehab Tarek's "Answer" moved here:
%YY
%[0,0]
%[0,1]
%[0,1,0]
%[1,1,0]
%[0,1,1]
%[1,1,1]
matrix=[];
lenght=[];
for i=1:6
[~,c]=size(YY{i}); % the cell matrix
length=[length c]; % length of each element in cell
s=YY{i}; % variable
matrix=[matrix s];
end
length=length';
although you can show the code in file un.m
3 Comments
Ameer Hamza
on 15 May 2020
In MATLAB arrays, the number of elements in each row cannot be different. If you have vectors of different lengths, it is best to use cell arrays.
Shehab Tarek
on 15 May 2020
Ameer Hamza
on 15 May 2020
Can you share the code which is used to generate the matrix? You cannot represent 0010010010110111 in floating-point format. Is it a character array?
Answers (1)
dpb
on 16 May 2020
Presuming the input is a cell array, m...
>> cellfun(@(s) sprintf('%d',fliplr(s)),m,'UniformOutput',false)
ans =
6×1 cell array
{'00' }
{'01' }
{'010'}
{'011'}
{'110'}
{'111'}
>>
NB: the sample output has only five elements of the six in the input array...
Categories
Find more on Cell Arrays in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!