How can I assign numeric values to strings in an array?
27 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Thorsten
2016-7-8
You can use a structure
S = struct('Name', {{'RH' 'OH' 'RO2' 'H20'}}, 'Value', [100 100 0 0])
0 个评论
更多回答(1 个)
Stephen23
2016-7-8
编辑:Stephen23
2016-7-8
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 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Cell Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!