因子分析

コマンド

> library("psych") #ライブラリの呼び出し
> (hoge<-read.csv('dat/hoge.csv',header=T,row.name="student")) #データの読み込み
> (hogehoge<-myfa(hoge)) #主成分分析とここまでは一緒。各因子のスコアを表示。横列で。これが初期解。関数myfaは因子数を指定すると、自動的に初期解と、回転解を選んでくれる。
> hogehoge$scores #hogehogeの共通因子スコアを表示
> taro <- hogehoge$scores #hogehogeの共通因子スコアを「taro」に格納
> colnames(taro) <- c('A','B','C') #因子の名付け
> round(taro,2) #各因子のスコアを表示。縦列で。
> plot(taro[,'A'],taro[,'B'],type='n',xlab='A',ylab="B") #プロットの箱を用意
> text(taro[,'A'],taro[,'B'],rownames(taro),cex=0.8) #プロットする
> fa(hoge,nfactors=3, rotate="varimax", fm="ml") #varimax回転した結果のデータを表示
> result<-fa(hoge,nfactors=3, rotate="varimax", fm="ml") #varimax回転した結果のデータを”result”に格納
> result$scores #主成分ごとのスコアを表示

関連ライブラリ

  • chooseCRANmirror() で、サーバー選択後に、install.packages( "ライブラリ名" ) でインストールしておく。
    • psych
    • psy
    • polycor
    • GPArotation
    • MCMCpack
    • moments
    • fBasics
    • lavaan

覚書

  • ML1:因子負荷
  • h2:共通性のスコア。これが1を超えているとまずい。共通性が1を越えてると、実際の分散より、多くの部分を因子が説明してしまっている
  • u2:独自性のスコア。
  • com:

用語

  • データの見方
    • 構成概念
    • 共通因子
    • 独自因子
    • 共通性
    • 独自性
    • 因子負荷
    • 因子分析モデル式の3つの仮定
    • 累積寄与率
    • 逆転項目
  • 回転
    • 単純構造
    • 直交回転
      • 初期解
      • リマックス varimax
      • クォーティマックス quartimax
      • エカマックス
      • オーソマックス
      • パーシマックス
      • 直交ジオミン回転 geominT
    • 斜交回転 ※社会科学系なら、まずこちらで。
      • プロマックス promax
      • オブリミン基準 oblimin
      • バイコーティミン biquartimin
      • シンプリマックス simplimax
      • ハリス・カイザー
      • 斜交ジオミン回転 geominQ
    • プロクラステス基準
  • 因子数の決定と命名
    • スクリープロット
    • ガットマン基準
    • MAPテスト
    • VSS基準
    • 因子の命名
  • 不適解
  • 信頼性係数の算出

web 資料

書籍

  • 豊田秀樹 編著『因子分析入門−Rで学ぶ最新データ解析』2012
    • Rベース
  • 松尾 太加志 (著), 中村 知靖『誰も教えてくれなかった因子分析』2002