Retrieving data from structures
1 view (last 30 days)
Show older comments
I am working on a function for the periodic table that when I input a property and group number, the output is the requested property of the atom belonging to the requested group number. I have already created a structure for the first 18 elements that I know works. It holds the properties: atomic number, group, period, and symbol.
If I have: function periodictable(property,groupnumber), how would I be able to extract the data...if that makes sense.
Example:
>> periodictable('symbol',2) ans = 'Be' 'Mg'
>> periodictable('atomicnumber',1) ans = [1] [3] [11]
4 Comments
Accepted Answer
More Answers (1)
Ryan G
on 26 Oct 2012
Edited: Ryan G
on 26 Oct 2012
Assuming your structure is like:
periodicTable.Helium periodicTable.Carbon etc...
names = fieldnames(myTable);
inGrp = cellfun(@(x) periodicTable.(x).group==groupnumber,names);
grpNames = names(inGrp);
output = cellfun(@(y) periodicTable.(y).('symbol'),grpNames)
Where you would replace symbol with the variable you choose, not in single quotes.
0 Comments
See Also
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!