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

1 Ansicht (letzte 30 Tage)
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?

Antworten (2)

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

bio lim
bio lim am 28 Nov. 2016
Bearbeitet: bio lim am 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

Community Treasure Hunt

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

Start Hunting!

Translated by