What is the best data structure for mapping a key to an array of values in MATLAB?
6 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
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!