cell配列でのデー​タ格納が複雑になって​しまい,取り出しに難​儀しています.複雑な​データを格納する方法​を教えて下さい.

14 ビュー (過去 30 日間)
Tadafumi Sugi
Tadafumi Sugi 2024 年 2 月 14 日
コメント済み: Tadafumi Sugi 2024 年 2 月 15 日
セル配列(20×20cell)
→セル配列(2×10cell)
→セル配列(5×2cell)
→数値配列(n×1double)
のようにとても複雑なデータの保存の仕方をしています.
取り出しに難儀しています.データのサイズも3GB程と大きくなっています.
セル配列と構造体配列以外を組み合わせるべきでしょうか?参考となる配列のデザインを教えてください.
よろしくお願いします.

採用された回答

Kojiro Saito
Kojiro Saito 2024 年 2 月 15 日
確かにセルと構造体はメモリーをより多く使用します。
cell 配列は、各要素に対する別々の mxArrays で構成されます。このため、多くの小さな要素をもつ cell 配列ではオーバーヘッドが大きくなります。
構造体では、フィールドごとにほぼ同量のオーバーヘッドが必要です。多くのフィールドと小さなコンテンツをもつ構造体は、オーバーヘッドが大きくなるので避けるようにします。数値スカラー フィールドをもつ構造体の大規模な配列では、大規模な数値配列を含むフィールドをもつ構造体よりも、多くのメモリが必要です。
ただ、n=100でダミーデータで検証しましたが、セル配列は元の行列*20*20*2*10*5*2の14%増ぐらいなので、セル配列や構造体を違うデータ型にすることでそれほどメモリー使用量には影響ないように思えます。
取り出しを楽にするには階層を少なくして新しい変数に割り当てて、元の変数をclearするなどの方法が考えられます。
  1 件のコメント
Tadafumi Sugi
Tadafumi Sugi 2024 年 2 月 15 日
ありがとうございます.
大変,参考になりました.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchangeビッグ データの処理 についてさらに検索

製品


リリース

R2022a

Community Treasure Hunt

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

Start Hunting!