MATLAB Answers

How to convert string to double array in table

16 views (last 30 days)
rampavan medi
rampavan medi on 24 Sep 2021 at 16:45
Commented: rampavan medi on 24 Sep 2021 at 19:15
I have a table with string of values in columns.
T1 =
5×1 table
A
___________________________________________________________________________________
{'[28.346853874154966, 284.04836936606813, 57.820072802912115, 64.72700622938805]'}
{'[16.520020800832032, 120.07328691828508, 57.82007280291212, 46.34078417002567]' }
{0×0 char }
{0×0 char }
{0×0 char }
When i am using this code T1.(1) = str2double(T1{:,1}); I am getting NaN values. in table.
T1 =
5×1 table
A
________
NaN
NaN
NaN
NaN
NaN
I am expecting follwing output
T1 =
5×1 table
A
___________________________________________________________________________________
[28.346853874154966, 284.04836936606813, 57.820072802912115, 64.72700622938805]
[16.520020800832032, 120.07328691828508, 57.82007280291212, 46.34078417002567]
[]
[]
[]
How to code this?
  1 Comment
the cyclist
the cyclist on 24 Sep 2021 at 16:54
It would be easier for us to make sure suggested code works as you expect if you uploaded the table T1 in a *.mat file, using the paperclip icon in the INSERT section of the toolbar.

Sign in to comment.

Accepted Answer

the cyclist
the cyclist on 24 Sep 2021 at 17:20
% My best guess at your data
A = {'[28.346853874154966, 284.04836936606813, 57.820072802912115, 64.72700622938805]';
'[16.520020800832032, 120.07328691828508, 57.82007280291212, 46.34078417002567]';
'';
'';
''};
T1 = table(A);
% Convert to a cell array of doubles
M = cellfun(@str2num,T1.A,'UniformOutput',false)

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by