how to convert a string to a vector
显示 更早的评论
Hi I have a string chain and wish to convert it into a vector So if my input is: x =1,3,3,4,5,6,6 I need an output
y = [1 3 3 4 5 6 6] How do I do this?
回答(1 个)
per isakson
2015-12-1
编辑:per isakson
2015-12-1
One way
>> str ='1,3,3,4,5,6,6'
str =
1,3,3,4,5,6,6
>> num = textscan( str, '%f', 'Delimiter',',' )
num =
[7x1 double]
and together with the missing step
str ='1,3,3,4,5,6,6';
num = textscan( str, '%f', 'Delimiter',',' );
num = permute( num{1}, [2,1] )
num =
1 3 3 4 5 6 6
another way
>> str2num( str )
ans =
1 3 3 4 5 6 6
7 个评论
lamghari
2015-12-1
Walter Roberson
2015-12-2
Are you indicating that your input is a string that has newlines and words like "Columns 326 through 338" inside it, or are you discussing what the output looks like after textscan or str2num?
If your input is a string like that, "Don't do that", get access to the original data instead.
lamghari
2015-12-3
编辑:per isakson
2015-12-3
lamghari
2015-12-3
编辑:per isakson
2015-12-3
per isakson
2015-12-3
"How do I do this?"   The short answer is: You cannot do that. And that's because
y = [6 7 6 6 6 6 6 5 4 4 4 4 ... ]
isn't a display format. It's an example of an assignment of a numerical vector to a variable, y
lamghari
2015-12-8
Walter Roberson
2015-12-8
output = ['y = [', regexprep(num, ',', ' '), ']' ];
If what you want is the string 'y = [6 7 6 6 6 6 6 5 4 4 4 4 ... ]'
类别
在 帮助中心 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
