Alternatives for str2num function not supported for code generation

6 views (last 30 days)
Hi All,
The following function `str2num` is not supported for code generation.
nodes = str2num(char(G.Nodes.Name));
The nodes names were assigned using the below
G = graph(tail,head);
G.Nodes.Name = cellstr(string(1:height(G.Nodes))');
Other instances where I'm using `str2num`
t = str2num(GraphEdges{edge}(1));
h = str2num(GraphEdges{edge}(2));
Suggestion on an alternate function to str2num that could be used for code generation will be really helpful.
  2 Comments
Stephen23
Stephen23 on 4 Oct 2023
STR2DOUBLE, SSCANF, etc... but which one to select depends largely on the data format.
Deepa Maheshvare
Deepa Maheshvare on 4 Oct 2023
Thank you for the suggestions.
str2double wors for t = str2num(GraphEdges{edge}(1));
However, I am not sure what has to be used for 'str2num(char(G.Nodes.Name))'
The output of G.Nodes.Name is
{'1' }
{'2' }
{'3' }
{'4' }
{'5' }
{'6' }
{'7' }
{'8' }
{'9' }

Sign in to comment.

Answers (1)

dpb
dpb on 4 Oct 2023
Edited: dpb on 4 Oct 2023
G.Nodes.Name=cellstr(num2str([1:9].')); % make example struct
N=str2double(G.Nodes.Name) % convert to numeric
N = 9×1
1 2 3 4 5 6 7 8 9

Categories

Find more on MATLAB Coder in Help Center and File Exchange

Products


Release

R2023b

Community Treasure Hunt

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

Start Hunting!