How do you transform a vector of numbers into a cell of strings?

1 次查看(过去 30 天)
I have a vector of numbers:
A = [1 2 3 4 5]';
I want to change it to a cell of strings, such as the one I've declared here:
B = cell(5,1); B{1} = '1'; B{2} = '2'; B{3} = '3'; B{4} = '4'; B{5} = '5';
How can I change A into B without using a for loop?

采纳的回答

Jos (10584)
Jos (10584) 2014-6-27
A = [1:5].'
B = arrayfun(@(x) num2str(x),A,'un',0)

更多回答(1 个)

Titus Edelhofer
Titus Edelhofer 2014-6-27
Hi,
one possibility:
Acell = num2cell(A);
B = cellfun(@(x) sprintf('%g', x), Acell, 'UniformOutput', false);
Titus

类别

Help CenterFile Exchange 中查找有关 Data Type Conversion 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by