Allow user to name structure?
1 回表示 (過去 30 日間)
古いコメントを表示
I realize variables should not be named dynamically, but I would like to name structures dynamically. We have large data sets for various vehicles where I think dynamic naming would help for easier storage of the structures as mat files.
For example, lets say we have some data for a dodge vehicle. I would like the user to be able to input 'Dodge' and then the structure would be Dodge.Data1, Dodge.Data2, etc. Then when the structure is saved as a mat file, it is saved as 'Dodge'.
This would allow the user to easily access structures for Dodge, Ford, Chevy, etc. for example.
The other way that I could think of is have a separate field for the specific model within the structure, like Car.model = 'Dodge'. The resulting structure here would be called Car. I feel like this would make it more difficult for a user to quickly locate the .mat file that has the 'Dodge' data in it.
Any ideas?
0 件のコメント
採用された回答
Matt J
2017 年 5 月 10 日
編集済み: Matt J
2017 年 5 月 10 日
You can do this.
sname='Dodge';
S.(sname).Data1=...
S.(sname).Data2=...
and then when you want to save to a .mat file you do
save filename.mat -struct S
However, what you are pursuing sounds excessively acrobatic to me. You could just have different .mat files for different cars. Then, if you want to read data for a particular car into a structure, you could just do things like,
carData=load('Dodge.mat')
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Structures についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!