How do I split double-digit elements in a vector into two separate elements?

3 views (last 30 days)
I have a vector, v = [1 18 9 8], and I'm trying to split up the 18 into two separate elements so that the new vector would be new_vec = [1 1 8 9 8]. Any ideas on how to approach this?

Answers (2)

Andrei Bobrov
Andrei Bobrov on 28 Nov 2016
Edited: Andrei Bobrov on 28 Nov 2016
v = [1 18 9 8];
new_vec = sprintf('%d',v)-'0';

bio lim
bio lim on 28 Nov 2016
Edited: bio lim on 28 Nov 2016
Simple approach would be:
v = [1 18 9 8];
for i = 1 : length(v)
new_vec{i} = num2str(v(i)) - '0'
end
new_vec = cell2mat(new_vec);
The output is:
new_vec =
1 1 8 9 8

Categories

Find more on Data Types 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!