Convert a string in cell into numbers.
6 次查看(过去 30 天)
显示 更早的评论
I have: X = 1x1 struct X.T = 27919x1 cell and for example X.T(1,1) = 3,7,12,16 like char. I'd like to have X.T(1,1) like 1x4 double with 4 numeric value. How can I do this? Thank you in advance
2 个评论
the cyclist
2017-4-1
A couple questions:
Do you mean that X.T(1,1) is a character array that includes the commas, as in
'3,7,12,16'
Or something else?
Is all of X.T like that, such that you want to convert the entire cell array from such character arrays to numeric? Or do you just want to do specific elements that you will index into?
采纳的回答
the cyclist
2017-4-1
% Defining an example cell array that contains a character array.
a{1,1} = '3,7,12,16';
% Convert the contents of that element to a numeric array
a{1,1} = str2num(a{1,1})
2 个评论
the cyclist
2017-4-1
编辑:the cyclist
2017-4-1
You can do this more compactly like this:
X.T = cellfun(@str2num,X.T,'UniformOutput',false)
The reason I did not suggest this originally is that I thought you only wanted to convert individual elements, not the whole thing.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!