How can I convert a cell array with values {'S101' 'S102'},to a double array?

1 view (last 30 days)
events = {'S100';'S102';'S103';'S101'}
  3 Comments
John D'Errico
John D'Errico on 21 Aug 2018
A double array of what? The numbers [101, 102]? Or, perhaps the values stored inside the variables S101, S012, etc? Or maybe even the ascii representation of those characters. The point is, 'S101' is itself not a number. It is just a string of characters. In your eyes, it may represent something, but only you know the context of what you want to see.
Bubblesjinx
Bubblesjinx on 21 Aug 2018
@Walter expected result shoould be a double array with same entries, but i figured out if i eliminate 'S', it would work too.

Sign in to comment.

Accepted Answer

Stephen23
Stephen23 on 21 Aug 2018
Edited: Stephen23 on 21 Aug 2018
Making some assumptions:
>> events = {'S100';'S102';'S103';'S101'};
>> str2double(strrep(events,'S','')) % easy
ans =
100
102
103
101
>> sscanf(sprintf('%s\v',events{:}),'S%d\v') % probably more efficient
ans =
100
102
103
101

More Answers (0)

Categories

Find more on Structures in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!