How to store various data types in a nested cell structure?

1 Ansicht (letzte 30 Tage)
Ali
Ali am 16 Jul. 2020
Bearbeitet: Ali am 16 Jul. 2020
I'd like to have a cell structured as the following, where each row corresponds to a pointCloud object along with its information computated before hand, where id and size column hold numbers, type column holds text, ptCloud column holds the actual pointCloud object and segmentsArray contains another 1xN cell that holds the ptCloud's segmented point cloud objects.
  • How is storing and retrieval implemented?
  • I know I should use curly braces for refering to cell's contents, but with respect to nested cells if were to use this in 'for loop' how should I implement it?
  • Also for retrieval of each rows information in a 'for loop' what is the proper approach?
And if cells are not suitable for holding various data types at once, what other options do I have?
id type ptCloud segmentsArray size
myCell = [ 1 'trees' ptcObject (nested 1xN cell) 8000
2 'roads' ptcObject (nested 1xN cell) 5000
....]

Akzeptierte Antwort

Arthur Roué
Arthur Roué am 16 Jul. 2020
Bearbeitet: Arthur Roué am 16 Jul. 2020
Why not use a structure array with fields id, type, ptCloud, segmentsArray and size ?
myStruc(1) = struct('id', 1, 'type', 'trees', 'ptCloud', ptcObject, 'segmentsArray', (nested 1xN cell), 'Size', 8000)
myStruc(2) = struct('id', 2, 'type', 'roads', 'ptCloud', ptcObject, 'segmentsArray', (nested 1xN cell), 'Size', 5000)
...
Then you can access any element this way :
myStruct(2).Size
>> 5000
Imo, cell arrays are not the best way to organisze heterogeneous data.
  1 Kommentar
Ali
Ali am 16 Jul. 2020
Bearbeitet: Ali am 16 Jul. 2020
@Arthur I appreciate your elegant and concise answer, just what I was looking for, thank you!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrix Indexing 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!

Translated by