ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

カテゴリ レベルでの並べ替え

順序配列のカテゴリ レベルでの並べ替え

この例では、reorderlevels を使用して順序配列のカテゴリ レベルを並べ替える方法を示します。

標本データを読み込みます。

AllSizes = {'medium','large','small','small','medium',...
            'large','medium','small'};

作成された変数 AllSizes は、8 個のオブジェクトのサイズ測定値が含まれる文字列のセル配列です。

順序配列を作成します。

AllSizes を順序配列に変換しますが、カテゴリ レベルの順序は指定しません。

size  = ordinal(size);
getlevels(size)
ans = 

     large      medium      small 

既定では、カテゴリはラベルを基準にアルファベットの昇順で並べ替えられるため、largemediumsmall の順になります。

要素を比較します。

最初のオブジェクト (サイズが medium) が 2 番目のオブジェクト (サイズが large) より小さいかどうかを確認します。

size(1) < size(2)
ans =

     0

論理値 0 は medium のオブジェクトが large のオブジェクトより小さくないことを表します。

カテゴリ レベルを並べ替えます。

カテゴリ レベルを並べ替えて、順序を smallmediumlarge の順にします。

size = reorderlevels(size,{'small','medium','large'});
getlevels(size)
ans = 

     small      medium      large 

要素を比較します。

最初のオブジェクトが 2 番目のオブジェクトより小さいことを確認します。

size(1) < size(2)
ans =

     1
論理値 1 は、想定されている不等式が成立していることを表します。

ノミナル配列のカテゴリ レベルでの並べ替え

この例では、reorderlevels を使用してノミナル配列のカテゴリ レベルを並べ替える方法を示します。定義上、ノミナル配列のカテゴリには自然な順序がありません。しかし、表示や解析のためにレベルの順序の変更が必要になる場合があります。たとえば、カテゴリカル共変量で回帰モデルを近似する場合、fitlm はノミナル独立変数の最初のレベルを基準カテゴリとして使用します。

標本データを読み込みます。

データセット配列 hospital には 100 名のサンプル患者に関して測定された変数が格納されます。変数 Weight には各患者の体重が格納されます。変数 Sex は各患者の性別 (Male または Female) が格納されるノミナル変数です。

load('hospital')
getlevels(hospital.Sex)
ans = 

     Female      Male 

既定では、ノミナル カテゴリの順序はラベルのアルファベットの昇順です。

カテゴリ レベル別にデータをプロットします。

性別ごとの体重の箱ひげ図を作成します。

figure()
boxplot(hospital.Weight,hospital.Sex)
title('Weight by Gender')

箱ひげ図は getlevels が返すアルファベット順と同じ順序で表示されます。

カテゴリの順序を変更します。

カテゴリ レベルの順序を変更します。

hospital.Sex = reorderlevels(hospital.Sex,{'Male','Female'});
getlevels(hospital.Sex)
ans = 

     Male      Female 
レベルの順序が新しく指定した順序に変わります。

新しい順序でデータをプロットします。

性別ごとの体重の箱ひげ図を作成します。

figure()
boxplot(hospital.Weight,hospital.Sex)
title('Weight by Gender')

箱ひげ図の順序は新しいレベルの順序に対応しています。

参考

| | | |

関連する例

詳細

この情報は役に立ちましたか?