2016-05-02 55 views
0

私はMATLABで作業しており、[Time]などの値のテーブルに列ヘッダーに単位を追加しようとしていますが、これは[]のために無効です。私が今まで見つけたすべてによると、列見出しは有効な変数名でなければならないと言われています。英数字と "_"のみです。明らかにユニットであるタイトルにユニットを追加する回避策を知っている人はいますか?可能なすべてのユニットをカバーするには、[]または()、および/ *のいずれかが必要です。MATLABテーブルの列ヘッダー

+0

を使用する必要がありますStackOverflowのへようこそ!コードや何かのような努力をして、人々があなたの問題を早期に理解して助けることができるように、あなたの質問を精緻化してください。ありがとう! – manetsus

答えて

1

テーブルの場合、カラム名は有効な変数名でなければならず(MATLABの変数名にはあなたが言及した文字は使用できません)ユニット情報を列に含める場合は、表のプロパティのVariableUnitsを使用して指定します。

t = table(rand(10, 1), 'VariableNames', {'Time'}); 
t.Properties.VariableUnits = {'sec'}; 

VariableDescriptionsを変更することもできます。

t.Properties.VariableDescriptions = {'Time (s)'}; 

要約データを表示すると、ユニットとカスタム説明が表示されます。

summary(t) 

%// Variables: 
%// 
%// Time: 10x1 double 
%// Units: sec 
%// Description: Time (s) 
%// Values: 
%// 
%//  min  0.11437 
%//  median  0.4344 
%//  max  0.96995 

更新

あなたが本当にしたい場合、あなたは有効であるが、単位を伝える変数名(すなわちTime_sec

+0

これは私が望んでいたものではありません。一見して要約に入ることなく、テーブル内のユニットを見たいと思っています。これは不可能ですか? –

+0

私の答えの最初の文章のせいでできません。変数名のみが列の上部に表示されます。変数名に 'Time_sec'のようなものを使う必要があります – Suever

関連する問題