Character Vector to Character Cell Array

1 Ansicht (letzte 30 Tage)
Leah Ettensohn
Leah Ettensohn am 18 Aug. 2020
Beantwortet: SAA am 19 Aug. 2020
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..

Antworten (1)

SAA
SAA am 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.

Kategorien

Mehr zu Data Type Conversion finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by