2016-07-13 2 views
0

私はathe、bted、bdou、ccour、chr、crt、cpoy、行ccour、athe、cpoy、bted、chr、bdou、crtの7x1 matlabテーブルなどの7つのフィールドを持つ1x1 matlab構造体データを持っています。どのように私はMATLABテーブルの行の順序に基づいてmatlabの構造の順序を整理するのだろうか?どうもありがとう。matlabのテーブルの行の順序に基づいてmatlabの構造のフィールドの順序を整理する方法は?

答えて

1

使用orderfields

http://ch.mathworks.com/help/matlab/ref/orderfields.html

あなたは、構造体SとテーブルTを持っている場合は、テーブルのカラム名を取得するためにT.Properties.VariableNamesを使用します。

orderfields(S, T.Properties.VariableNames); 

例:

順序(aa、cc、bb)で3つのフィールドを持つ構造体を作成します。

S.aa = 2; 
S.cc = 3; 
S.bb = 4; 

S = 

aa: 2 
cc: 3 
bb: 4 

(bb、aa、cc)の順序で3つの変数からテーブルを作成します。 T変数の順序に従って

S
aa = 2 
bb = 3 
cc = 4; 
T = table(bb,aa,cc) 

T = 

bb aa cc 
__ __ __ 

3  2  4 

受注フィールド:

S2 = orderfields(S, T.Properties.VariableNames) 

S2 = 

bb: 4 
aa: 2 
cc: 3 
+0

私は構造体への私のMatlabのテーブルを変換する必要がありますか?私は私が持っているmatlabテーブルの行の順序に基づいてmatlabの構造の順序を整理する必要がある構造データとmatlabのデータを持っています。 – RSo

+0

私の返信を更新しました。 'T.Properties.VariableNames'でテーブルの列名を取得し、' orderfields'の2番目のパラメータとして使用できます。 –

+0

はまだ動作しませんでした – RSo

関連する問題