How to add more values to an existing structure?
    59 views (last 30 days)
  
       Show older comments
    
Dear All,
I have an existing structure A which has several fields. Each field have 100 values. Now I want to add 20 more values to each existing field for the existing structure A. I used the following code but I got 2 structures which is not what I want. 
A = [A; struct(fileds, values)]
Thanks for your help. 
Benson
3 Comments
  dpb
      
      
 on 10 Jun 2021
				Oh, ok.
Use either setfield() or the dot notation referencing the desired field.  NB: you can reference fields via variables via parentheses syntax such as
S.X=randi(10,4,1);                  % create dummy struct
vn='X';                             % variable containing field name
S.(vn)=[S.(vn); randi(23,12,1)];    % add another dozen elements
Remember you can also get the struct fieldnames programmatically so don't have to write explicit strings as above with
>> vn=fieldnames(S)
vn =
  1×1 cell array
    {'X'}
>> 
Accepted Answer
More Answers (0)
See Also
Categories
				Find more on Text Files 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!

