Effacer les filtres
Effacer les filtres

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

2 vues (au cours des 30 derniers jours)
Jakob Siegel
Jakob Siegel le 28 Nov 2016
Modifié(e) : Andrei Bobrov le 28 Nov 2016
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?

Réponses (2)

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

bio lim
bio lim le 28 Nov 2016
Modifié(e) : bio lim le 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