Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

convert a string vector to a vector of numbers

Asked by googo on 16 Apr 2013

Hello,

suppose I have a vector of string [1 2 3 4] and i want to change it to a vector of nmbers to do a numeric caculations, How can I do it? Thank's!

2 Comments

Walter Roberson on 16 Apr 2013

Are the '[' and ']' in the string? Are the numbers only integers or possibly floating point ?

googo on 16 Apr 2013

string=['1' '2' '3' '4'] and I want to change it to : a = [1 2 3 4]

googo

Products

No products are associated with this question.

1 Answer

Answer by Friedrich on 16 Apr 2013
Edited by Friedrich on 16 Apr 2013

Hi,

as long there are no [] in the string use textscan:

textscan('1 2 3 4 6.3','%f','delimiter',' ')

In the case there are use strrep to remove the [ or ] before calling textscan.

8 Comments

googo on 16 Apr 2013

Walter, what do you mean? I didn't understand.

Walter Roberson on 16 Apr 2013

You have

t(i,n+1)=num2str(c);

the destination t(i,n+1) is a single character. The number 10 and upwards require two (or more) characters to represent as a string. Therefore if c reached 10 (occurrences) the code would fail. This suggests that you have a code design problem.

googo on 16 Apr 2013

Thank you... I'll try to find a way to fix it..

Friedrich

Contact us