How can I assign numeric values to strings in an array?
27 views (last 30 days)
Show older comments
I need to assign specific values to some of these chemical species in an array. I need to set RH equal to 100, OH = 100, and NO = 100 and the rest of the species are equal to 0. The array of species looks like this:
SpeciesName =
'RH'
'OH'
'RO2'
'H2O'
'NO'
'NO2'
'RCHO'
'HO2'
'HNO3'
'H2O2'
'O2'
'ROOH'
'hv'
'O3'
0 Comments
Accepted Answer
Thorsten
on 8 Jul 2016
You can use a structure
S = struct('Name', {{'RH' 'OH' 'RO2' 'H20'}}, 'Value', [100 100 0 0])
0 Comments
More Answers (1)
Stephen23
on 8 Jul 2016
Edited: Stephen23
on 8 Jul 2016
SpeciesName = {
'RH'
'OH'
'RO2'
'H2O'
'NO'
'NO2'
'RCHO'
'HO2'
'HNO3'
'H2O2'
'O2'
'ROOH'
'hv'
'O3'};
C = SpeciesName';
C(2,:) = num2cell(zeros(size(C)));
C(2,1:2) = {100};
S = struct(C{:});
And accessing the data in the structure is trivial:
>> S.O2
ans =
0
>> S.RH
ans =
100
>> S.NO
ans =
0
0 Comments
See Also
Categories
Find more on Cell Arrays 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!