How do I use elements in a vector to create a number

If I have a vector with a certain size of elements how can I turn some of those elements into a combined number versus separate numbers in a vector?

3 个评论

Please provide and example.
x=[1 2 3 4 9 7];
y=num2str(x(2:5));
y=str2double(y(y~=' '));%2349
Thank you but I was asking more along the lines of if you have
x=[1 2 3 4 9 7];
to create
number = 123
or number = 497
I know how to capture the elements I want from the vector but don't know how to extract them into a number.

请先登录,再进行评论。

 采纳的回答

Take whatever indexes of the vecture you want to create the number out of say 1:3
x=[1 2 3 4 9 7];
y=num2str(x(1:3));
y=str2double(y(y~=' '));%123
If the size of the numbers will be the same number of digits, you could do it all together and then reshape at the end.
x=[1 2 3 4 9 7];
y=num2str(x);
y=str2num(reshape(y(y~=' '),3,[])');%[123;497]

1 个评论

OHH I see now, I didn't include that str2double at the end and it had it under 'appostraphies' so I wasn't satisfied at first but now that I include it I can see what you mean. Thank you!

请先登录,再进行评论。

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Matrix Indexing 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by