構造体配列から読み取​ったテーブルの行の名​称を付ける

4 views (last 30 days)
Kazu Ari
Kazu Ari on 18 Oct 2021
Commented: Kazu Ari on 19 Oct 2021
他のソフトウェアから出力されたデータをMATLABで読み取り、処理をしたいと考えています。
読み込んだデータは構造体配列で中身は1行の数値データの集合ですが、行には名称がついていません。
これからTABLEを作って処理するときに、行に名称を付けたいのですがどのようにすれば良いでしょうか?
宜しくお願い致します。

Accepted Answer

Atsushi Ueno
Atsushi Ueno on 18 Oct 2021
Edited: Atsushi Ueno on 18 Oct 2021
上記ドキュメントの「スカラー構造体のテーブルへの変換」を参考にしました。
  • 列の名称:構造体のフィールド名
  • 行の名称:フィールドName(セル配列)内の文字列 としています
>行に名称を付けたいのですがどのようにすれば良いでしょうか?
(Table名).Properties.RowNamesに行の項目名を設定します
S.Name = {'CLARK';'BROWN';'MARTIN'};
S.Gender = {'M';'F';'M'};
S.SystolicBP = [124;122;130];
S.DiastolicBP = [93;80;92];
S
S = struct with fields:
Name: {3×1 cell} Gender: {3×1 cell} SystolicBP: [3×1 double] DiastolicBP: [3×1 double]
T = struct2table(S)
T = 3×4 table
Name Gender SystolicBP DiastolicBP __________ ______ __________ ___________ {'CLARK' } {'M'} 124 93 {'BROWN' } {'F'} 122 80 {'MARTIN'} {'M'} 130 92
T.Properties.RowNames = T.Name; % (Table名).Properties.RowNamesに行の項目名を設定
T.Name = []; % 行の項目名にしたので列'Name'は削除
T
T = 3×3 table
Gender SystolicBP DiastolicBP ______ __________ ___________ CLARK {'M'} 124 93 BROWN {'F'} 122 80 MARTIN {'M'} 130 92
  1 Comment
Kazu Ari
Kazu Ari on 19 Oct 2021
ありがとうございます。
実データでTryしてみます。

Sign in to comment.

More Answers (0)

Categories

Find more on データ型の変換 in Help Center and File Exchange

Tags

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!