mydocs

判別分析

数値計算による判別分析をする

概要

判別得点(線形型判別)

データが直線のどちら側に有るかを見ることで、どちらのクラスに属するか判別すること

判別得点(マハラノビスの距離)

多変量データにおける点同士の距離を測る指標の一つ。
データ群のばらつき(分散)と、特徴量間の関係(相関)を考慮して、どちらのクラスに属するか判別すること

正答率と誤判別率

判別的中率は、予後予測を目的とする研究で用いることがある指標
 一言で言うと、統計モデルで推定された結果が、どれだけ正確に分類できたかの指標

使い方

・判別得点(線形型判別)

xa = [
    [3.4, 2.9], [3.9, 2.4],
    [2.2, 3.8], [3.5, 4.8],
    [4.1, 3.2], [3.7, 4.1],
    [2.8, 4.2]
]
xb = [
    [1.4, 3.5], [2.4, 2.6],
    [2.8, 2.3], [1.7, 2.6],
    [2.3, 1.6], [1.9, 2.1],
    [2.7, 3.5], [1.3, 1.9]
]
da = Num4ClsAnaLib::DiscAnalib.new
an = da.score(xa, xb)

・判別得点(マハラノビスの距離)

xa = [
    [3.4, 2.9], [3.9, 2.4],
    [2.2, 3.8], [3.5, 4.8],
    [4.1, 3.2], [3.7, 4.1],
    [2.8, 4.2]
]
xb = [
    [1.4, 3.5], [2.4, 2.6],
    [2.8, 2.3], [1.7, 2.6],
    [2.3, 1.6], [1.9, 2.1],
    [2.7, 3.5], [1.3, 1.9]
]
da = Num4ClsAnaLib::DiscAnalib.new
sc = da.score2(xa, xb)

・正答率と誤判別率

sc = {
    "G1": [1.034, 1.337, 0.006, 3.095, 2.458, 2.716, 1.370],
    "G2": [-1.579,-0.872,-0.530,-1.997,-2.033,-2.176,0.510,-3.339]
}
xa = [
    [3.4, 2.9], [3.9, 2.4],
    [2.2, 3.8], [3.5, 4.8],
    [4.1, 3.2], [3.7, 4.1],
    [2.8, 4.2]
]
xb = [
    [1.4, 3.5], [2.4, 2.6],
    [2.8, 2.3], [1.7, 2.6],
    [2.3, 1.6], [1.9, 2.1],
    [2.7, 3.5], [1.3, 1.9]
]
da = Num4ClsAnaLib::DiscAnalib.new
da.validity(sc, xa, xb)