Extracting value from Name-Value pairs using the Name string
    5 views (last 30 days)
  
       Show older comments
    
    Anirudha Vijay Mahagaonkar
 on 14 Sep 2021
  
    
    
    
    
    Commented: Anirudha Vijay Mahagaonkar
 on 14 Sep 2021
            Let's say I have a variable called 'test'. test is a 1x2 struct array with 2 fields - Name and Value. 
test = 
  1×2 struct array with fields:
    Name
    Value 
When I open the variable 'test', this is how it looks. Each of the fields have 2 values (2 pairs of name-value pair) 

How can I extract just the value of the name 'long_name' without using positional index? 
Using positional index, I can do it using the following code 
    test(2).Value
But I want to use the name string 'long_name' to find the corresponding value, as the 'long_name' may not always be at the 2nd position in other variables like test. 
Any leads on how I could do that? 
Thanks! 
0 Comments
Accepted Answer
More Answers (1)
  Steven Lord
    
      
 on 14 Sep 2021
        test = struct('units', {'degrees_east', 'degrees_north'}, ...
    'long_name', {'longitude', 'latitude'})
theNames = {test.long_name};
findSpecificName = ismember(theNames, 'longitude');
T = test(findSpecificName)
q = test(ismember(theNames, 'latitude')).units
0 Comments
See Also
Categories
				Find more on Operating on Diagonal Matrices 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!

