What is the best data structure for mapping a key to an array of values in MATLAB?
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I am facing an issue with which data structure to use and when. My use case involves unique keys, each of which will be mapped to an array of values.
'UniqueKey1' -> ['Value1', 'Value2', 1, 2, true];
'UniqueKey2' -> ['Value2', 'Value3', 2, 5, false];
'UniqueKey3' -> ['Value3', 'Value4', 5, 5, true];
I know Struct could be one of the options, but I am worried about the performance when the data size is large (more than 100 rows). Can someone recommend a better alternative in my case?
0 Kommentare
Akzeptierte Antwort
Matt J
am 22 Mai 2024
Bearbeitet: Matt J
am 22 Mai 2024
Dictionaries are supposed to be faster than structs, but they require a recent Matlab version.
keys="UniqueKey"+(1:3)';
values={ {'Value1', 'Value2', 1, 2, true };
{'Value2', 'Value3', 2, 5, false};
{'Value3', 'Value4', 5, 5, true}};
d=dictionary(keys,values)
d{"UniqueKey2"}
5 Kommentare
Paul
am 23 Mai 2024
Try changing to:
d = dictionary;
d = insert(d, 'key1' , { {'Value1', 'Value2', 1, 2, true} } )
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Structures finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!