Find a parameter in a multi-tiered structure

I have a structure setup in the following format: fileName.packetName.parameter.data
Where all the parameters across the multiple packetNames are different. I am looking for a solution to not have to specify the packetName as different software versions have parameters located in other packets (i.e. Var1 is in Packet1 in version 1.0 but it moves to Packet2 in version 1.1)

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 13 Okt. 2023

0 Stimmen

You are perhaps looking for something that MATLAB refers to as "dynamic field names"; https://www.mathworks.com/help/matlab/matlab_prog/generate-field-names-from-variables.html

3 Kommentare

Matthew
Matthew am 16 Okt. 2023
This seems close but not quite what I'm looking for, unless I'm missing a usecase from there. I'm basically looking to skip a level of the structure. In the same terms as my original post, I have a structure in the format of name.Packet0, name.Packet1, name.Packet2, and name.Packet3. Each of these packets are also structures, which each contain 50 or so unique variables (so about 200 unique variables) but I'm looking for a way to not specify the Packet#.
The linked guide looks to be a way to dynamically create/call a structure but in my scenario I would still need to find which packet contains my desired variable.
You cannot "skip" structure levels.
The facilities you should be looking at are fieldnames and structfun
Matthew
Matthew am 16 Okt. 2023
Looks like that'll do, thank you much!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Produkte

Version

R2018b

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by