How can I convert values in a cell array into a form that can be used for calculations?

I'm sure this is a simple fix, but it's driving me crazy and I can't figure it out...
I'm using the code below in a GUI, and I need to get the data from the first row into a matrix that I can use for calculations.
data = get(handles.table, 'data');
y = data(1,:);
x = cell2mat(y);
Say I have two columns in my table, with values of 35 and 12. The cell2mat command is returning "3512" in a matrix, but what I need is "35 12". I need to be able to use the 35 and the 12 for different calculations.
Any suggestions would be much appreciated.

 Réponse acceptée

x = cellfun(@str2num,y,'UniformOutput',false)

2 commentaires

Thank you. Now when I do that I get this error:
Error using cellfun
Non-scalar in Uniform output, at index 2, output 1.
Set 'UniformOutput' to false.
Any ideas?
I updated the answer. It is probably because not all of your numbers have the same number of digits.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by