Main Content

mahal

判別分析分類器のクラスの平均に対するマハラノビス距離

構文

M = mahal(obj,X)
M = mahal(obj,X,Name,Value)

説明

M = mahal(obj,X) は、X の観測値から obj のクラス平均までのマハラノビス平方距離を返します。

M = mahal(obj,X,Name,Value) は、追加のオプションを使用してマハラノビス平方距離を計算します。このオプションは Name,Value のペアの引数で指定されたものです。

入力引数

obj

クラス ClassificationDiscriminant または CompactClassificationDiscriminant の判別分析分類器。通常、fitcdiscr で構築されます。

X

np 列の数値行列。ここで pobj に含まれる予測子の数で、n は任意の正の整数です。mahalX の行から obj 内のクラスの各 K-means までのマハラノビス距離を計算します。

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名、Value は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。

R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name を引用符で囲みます。

ClassLabels

obj.Yn 要素から成るクラス ラベル。ここで nX の行数です。

出力引数

M

出力 M のサイズと意味は、ClassLabels 名前と値のペアが存在するかどうかによって決まります。

  • ClassLabels なし — M はサイズ nK 列の数値行列です。ここで Kobj のクラスの数、nX の行の数です。M(i,j) は、Xi 番目の行からクラス j の平均へのマハラノビス平方距離です。

  • ClassLabels が存在する ― Mn 個の要素をもつ列ベクトルです。M(i) はマハラノビス平方距離であり、範囲は Xi 番目の行から ClassLabelsi 番目の要素クラスの平均までです。

クラスごとに異なる共分散行列を使用して、フィッシャーのアヤメのデータの平均からクラス平均へのマハラノビス距離を求めます。

load fisheriris
obj = fitcdiscr(meas,species,...
    'DiscrimType','quadratic');
mahadist = mahal(obj,mean(meas))

mahadist =
  220.0667    5.0254   30.5804

詳細

すべて展開する