Convert String array into Cell array
200 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Michael Williams
am 15 Mär. 2018
Beantwortet: Tarek Bekir
am 5 Sep. 2020
I am running simulations for 16 weather stations and saving 3 simulated temperature measurements at each station. I created a large table (11000x48000) to hold simulations. I want to name each of the columns something descriptive. I was able to get the names I want into a 1x48000 string array, but I believe I have to convert it into a 1x48000 cell array to work.
varNames = join([repmat('Sim_',3*1000*16,1),(reshape(repmat(1:1000,3*16,1),[],1)),...
repmat("_Station_",3*1000*16,1),(reshape(repmat(1:16,3,1000),[],1)),...
reshape(repmat({'_Max', '_Min', '_Avg'},1000*16,1)',[],1)], "")';
simTable.Properties.VariableNames = varNames;
0 Kommentare
Akzeptierte Antwort
James Tursa
am 15 Mär. 2018
Is this the conversion you need?
result = arrayfun(@(x)char(varNames(x)),1:numel(varNames),'uni',false);
Weitere Antworten (2)
Tarek Bekir
am 5 Sep. 2020
You can use cellstr (array)
For example
tt=["apple";"orange";"banana"];
bb={};
bb=cellstr(tt);
tt
bb
tt =
3×1 string array
"apple"
"orange"
"banana"
bb =
3×1 cell array
{'apple' }
{'orange'}
{'banana'}
0 Kommentare
Siehe auch
Kategorien
Mehr zu Data Type Conversion finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!