Character Vector to Character Cell Array
1 view (last 30 days)
Show older comments
I have a logical character vector, a, with the dimensions 5580x1 (example below). I want to convert a into a 5580x20 cell array. To do this, I want to copy each element of the original 5580 elements twenty times. Does anyone happen to know of a simple way to do this? I have very little exerpience with matlab, so am not sure which functions would be best to approach this problem with. Thank you in advance for your help!!
What I currently have:
a = '1' '0' '1' '1' '0' ....etc
The cell array I want:
a =
'1' '1' '1' '1' etc... for 20 cells
'0' '0' '0' '0' etc... for 20 cells
'1' '1' '1' '1' etc... for 20 cells
'1' '1' '1' '1' etc... for 20 cells
...repeated for all original 5580 elements..
0 Comments
Answers (1)
SAA
on 19 Aug 2020
If you only have a logical character vector why do you want them all to be in a cell arrays and not just a matrix? But anyhow this should do what you want:
b = num2cell(str2num(a).*ones(size(a,1),20));
you can also not do num2cell and just work with a regular matrix which in my opininon is just easier to work with.
0 Comments
See Also
Categories
Find more on Data Type Conversion in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!