Change table of structs into columns of data in a table

14 ビュー (過去 30 日間)
Centauri Jolene
Centauri Jolene 2020 年 9 月 8 日
コメント済み: Centauri Jolene 2020 年 9 月 9 日
I have many tables which contain anywhere from 2000 - 7500 1x1 structs in one column. Each struct contains a value for x, y and z positions. I need to extract these 3 numbers from each struct and have them in their own columns (as just regular floats). The end result will be a table with a column for x values, a column for y values, and a column for z values.
I've attached an example file (.mat).
What is an efficient way to do this?

採用された回答

Mohammad Sami
Mohammad Sami 2020 年 9 月 8 日
Based on your example data this will work. All structs must have the exact same fields, otherwise this will fail
flattened = struct2table(vertcat(data{:,1}));
  1 件のコメント
Centauri Jolene
Centauri Jolene 2020 年 9 月 9 日
Thank you this worked perfectly. I just had to change it to
flattened = struct2table(vertcat(data.dog1_pos(:,1)));
since it wasnt a cell array. Cheers

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeStructures についてさらに検索

製品


リリース

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by