How can I extract fields from a structure and create variables in the MATLAB workspace for example i need to extract every row in the field of position as shown below
20 views (last 30 days)
Show older comments
![Capturepp.PNG](https://www.mathworks.com/matlabcentral/answers/uploaded_files/240034/Capturepp.png)
2 Comments
Stephen23
on 1 Oct 2019
Edited: Stephen23
on 1 Oct 2019
"...for example i need to extract every row in the field of position as shown below"
Why do you want to do this?
Currently you can trivially access the data in the structure (using basic indexing and fieldnames), so why would you want to make your data access more complex by splitting your data up into many separate variables?
Answers (2)
Image Analyst
on 1 Oct 2019
Try this:
for k = 1 : length(particle)
% Extract the Position field for this row into a new variable.
thisRow = particle(k).Position;
% Now do something with thisRow....
end
0 Comments
CARLOS RIASCOS
on 1 Oct 2019
You can try to understand a structure from the following code, in which several types of data are defined within a structure called s.
s.a = 1;
s.b = {'A','B','C'};
s.c.f = 4;
Then, you can extract from the structure s, an arbitrary data, for example, to extract the constant 1, in your script you can define the following, from the name with which it was saved in the structure, like this:
H = s.a;
Now, in the Workspace a variable called H with the value of 1 is defined.
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!