mydocs

因子分析

数値計算による因子分析を行う

概要

因子負荷行列(反復主因子法+プロマックス回転)

・反復主因子法
 共通性の初期値を決め、共通性を対角に代入した相関行列を 固有値分解することで共通性を推定する方法。 しかしそれだけではまだ共通性は正確ではないため、推定された共通性を再代入し、 収束するまで計算する方法。

・プロマックス回転(斜交回転)
 因子軸が斜交する、つまり因子間の相関を仮定するモデル。
ただし、データによっては斜交回転をしても相関が殆どない場合も有る

因子寄与率・累積寄与率

因子寄与率:各因子がデータ全体を何%説明しているかを示すもの
累積寄与率:因子寄与率を第1因子から順に足して行った数値

因子得点

各因子に対してどれくらいの重みを持っているのかを計算したもの

使い方

・因子負荷行列(反復主因子法+プロマックス回転)の場合

xij = [
    [3,1,2],[4,1,1],[3,4,5],[1,4,4],[2,5,5],
    [5,2,1],[1,5,4],[4,2,3],[2,3,3],[5,3,2],
]
fact = Num4ClsAnaLib::SchFactAnaLib.new
factld = fact.prim_fact_method(xij)

・寄与率・累積寄与率

factld = [
    [0.7317532420269423], [-0.8889664622502997], [-0.9560326157967125]
]
fact = Num4ClsAnaLib::SchFactAnaLib.new
fact.contribution(factld)

・因子得点

xij = [
    [3,1,2],[4,1,1],[3,4,5],[1,4,4],[2,5,5],
    [5,2,1],[1,5,4],[4,2,3],[2,3,3],[5,3,2],
]
factld = [
    [0.7317532420269423], [-0.8889664622502997], [-0.9560326157967125]
]
fact = Num4ClsAnaLib::SchFactAnaLib.new
fact.score(factld, xij)