Untitled

MV001
Stata 12 コマンド解説書
【多変量解析編】Vol-1
本解説書は Stata の多変量解析機能のうち
• 多変量分散分析 (MANOVA)
• 因子分析
• 主成分分析
について記述したものです。
目 次
コマンド
whitepaper タイトル
ページ
mwp 番号
factor
因子分析
3
mwp-105
factor
推定後機能
15
mwp-106
manova
多変量分散分析
41
mwp-103
manova
推定後機能
57
mwp-104
pca
主成分分析
67
mwp-107
pca
推定後機能
76
mwp-108
rotate
回転機能
95
mwp-109
本解説書は StataCorp 社の許諾のもとに作成したものです。
一部
c 2011 Math 工房
⃝
c 2011 StataCorp LP
⃝
Math 工房
web:
email:
www.math-koubou.jp
[email protected]
Stata12 whitepapers
mwp-105
factor - 因子分析
factor は因子分析の機能を提供するコマンドです。factor の場合は変数の形で与えられたデータを処理し
ます。これに対し、相関行列や共分散行列の形で与えられたデータを分析するための factormat というコマ
ンドも別に用意されています。
1. 因子分析
2. データセット
3. 主因子法
4. altdivisor オプション
5. 主成分因子法
6. 反復主因子法
7. 最尤法
8. factormat コマンド
1. 因子分析
因子分析 (factor analysis)、より厳密には探索的因子分析 (exploratory factor analysis) というのはデータ削
減 (data reduction) のための統計手法です。p 個の変数によって規定されたデータがあった場合、それらの
線形結合によって構成される q 個(ただし q < p とする)の新変数で情報の多くが表現でき、しかもそれらの
新変数の意味がそれなりに解釈が可能なときに、因子分析という手法は有用性を発揮することになります。
もともとの変数値を yi1 , yi2 , . . . , yip としたとき、因子分析は q 個の共通因子 (common factors) zi1 , zi2 , . . . ,
ziq を算出し、yij (j = 1, . . . , p) を
yij =
q
∑
zik bkj + eij
(1)
k=1
のような zik (k = 1, . . . , q) の線形結合として表現します。この式において係数値の集合である bkj (k =
1, . . . , q; j = 1, . . . , p) は因子負荷量(factor loadings)、残差に相当する eij (j = 1, . . . , p) は変数 j の独自因
子 (unique factor) と呼ばれます。zik , bkj , eij の値は一意に決まるわけではありませんが、種々の制約を設け
ることによって特定の値が算出されることになります。
c Copyright Math 工房;
⃝
c Copyright StataCorp LP (used with permission)
一部 ⃝
3
Stata12 whitepapers
これらの因子と負荷量が推定できると、次に必要となるのが解釈 (interpretations) のステップです。これは
多分に主観的なプロセスであるわけですが、通常は因子負荷量 bkj を評価し、それぞれの共通因子に適切な名
前を付けるというステップを踏みます。その際、因子負荷量を回転させるという操作を伴うこともあります。
回転には直交回転 (orthogonal rotations) と斜交回転 (oblique rotations) の 2 種類があります。直交回転の
場合にはオリジナルの解の性質が維持されるのに対して、斜交回転の場合には一部の性質が失われます。回転
のパターンは無限にあるため、同一のデータに対してさまざまな解釈がもたらされることになります。回転に
ついては [MV] factor postestimation (mwp-106 ) または [MV] rotate (mwp-109 ) をご参照ください。
2. データセット
評価版では割愛しています。
3. 主因子法
最初にデフォルトである主因子法 (principal-factor method) を用いて因子分析を実行してみます。
• Statistics ◃ Multivariate analysis ◃ Factor and principal component analysis ◃ Factor analysis と操作
• Model タブ: Variables: bg2cost1-bg2cost6
図 1 factor ダイアログ- Model タブ
4
Stata12 whitepapers
このとき Model 2 タブ上の設定では分析手法として主因子法が選択されている点に注意してください。
図 2 factor ダイアログ- Model 2 タブ
実行結果: [MV] factor Example 1 p296-297 参照
factor からの出力中、第 2 のテーブルには因子負荷量 bkj の値が表示されているわけですが、それからもわ
かるように共通因子としては Factor1 から Factor3 までの 3 つが選択されています。これは第 1 のテーブル
に示されている固有値の中から正のもののみを抽出するというロジックの結果であるわけですが、この閾値に
ついては mineigen() オプションによって調整できます。主因子法の場合、5 × 10−6(実質上 0 )がデフォル
ト値として設定されています。この例の場合、Factor3 に対する固有値は 0 に近い値であるため、意味のあ
る共通因子は Factor1 と Factor2 の 2 個のみと考えられます。
一方、第 2 のテーブル中の Uniqueness というのは独自性を意味し、共通因子では説明できない分散のパー
センテージを表しています。例えば変数 bg2cost1 の場合について言えば
1 − 0.24702 − 0.36702 − 0.04462 = 0.8023
のようにして算出されています。実際、電卓機能を用いて計算してみると
5
Stata12 whitepapers
. display 1 - 0.2470^2 - 0.3670^2 - 0.0446^2
*1
.80231284
となることが確認できます。bg2cost2-bg2cost6 についても同様です。
この例の場合、独自性の値はいずれも高い値を示しているため、共通因子だけでは変数 bg2cost1-bg2cost6
を十分に説明しきれていないと考えなくてはなりません。それでも強いて解釈を試みるなら次のようになるで
しょう。
◦ Factor1 は費用に対する医師の平均的な姿勢を表すものと考えられます。なぜなら因子負荷量テーブ
ルの第 1 列の符合が示すように、すべての質問について“positive”に応答するよう働きかける効果を有
するからです。なお、bg2cost2-bg2cost4 についての符合が負であるにもかかわらず“positive”であ
ると主張している点に注意してください。bg2cost2-bg2cost4 については回答の向きが逆になって
いるからです。費用は治療に対して大きな影響を持つべきではないと医師が考えるなら、その医師は
bg2cost2-bg2cost4 に対して反対の立場を取り、残りの 3 つの質問に対しては同意することが予想さ
れます。
◦ Factor2 はすべての項目について正の符合を有しています。従ってもっともらしいと受け取れるアイ
デアであればその内容によらず合意してしまう傾向を表すものと解釈することができます。この共通因
子は統計学的に見ると残すべきと言えますが、主観的な立場からすると落したくなるかも知れません。
推定された共通因子 zik (k = 1, 2, 3) の値については postestimation 機能の 1 つである predict コマンドを
用いることによって確認することができます。ここでは新変数 z1, z2, z3 中に共通因子の値を出力させてみ
ます。
• Statistics ◃ Postestimation ◃ Predictions, residuals, etc. と操作
• Main タブ: New variable names or variable stub*: z*
Produce: Factors scored by the regression scoring method (デフォルト)
*1
メニュー操作: Data ◃ Other utilities ◃ Hand calculator
6
Stata12 whitepapers
図 3 predict ダイアログ - Main タブ
. predict z*, regression
Scoring coefficients (method = regression)
Variable
Factor1
Factor2
Factor3
bg2cost1
bg2cost2
bg2cost3
bg2cost4
bg2cost5
bg2cost6
0.13604
-0.19316
-0.22777
-0.17501
0.27242
0.28621
0.24925
0.23654
0.27876
0.12900
0.18270
0.17438
-0.04920
-0.08679
0.02509
0.11011
0.07471
-0.00963
この操作によって 568 人の医師ごとに z1, z2, z3 という値が算出されたことになります。参考までに先頭 5
人の医師についてその内容をリスト出力しておきます。
7
Stata12 whitepapers
. list clinid z* in 1/5
clinid
z1
z2
z3
1
2
3
4
5
-1.111189
.0175051
.6034917
-.0844536
-.8665586
-.7325252
-.4894224
-.0262457
-.0703058
-.6070008
-.0551059
.1282732
-.2909511
-.0865225
.0190071
1.
2.
3.
4.
5.
4. altdivisor オプション
評価版では割愛しています。
5. 主成分因子法
評価版では割愛しています。
6. 反復主因子法
評価版では割愛しています。
7. 最尤法
評価版では割愛しています。
8. factormat コマンド
評価版では割愛しています。
¥
8
Stata12 whitepapers
mwp-103
manova - 多変量分散分析
manova は多変量分散分析 (MANOVA)、あるいは多変量共分散分析 (MANCOVA) の機能を提供するコマン
ドです。単変量の分散/共分散分析機能については [R] anova (mwp-042 ) をご参照ください。
1. 多変量分散分析
2. 一元配置 MANOVA – balanced
3. 一元配置 MANOVA – unbalanced
4. 基盤となる回帰モデル
5. 二元配置 MANOVA
6. MANCOVA
7. 反復測定 MANOVA
1. 多変量分散分析
manova は anova コマンドを多変量に拡張したもので、多変量分散分析 (MANOVA: multivariate analysisof-variance)、及び多変量共分散分析 (MANCOVA: multivariate analysis-of-covariance) の機能を提供し
ます。
MANOVA で算出される標準的な統計量には次の 4 種類があります。
(i) Wilks のラムダ
(ii) Pillai のトレース
(iii) Lawley-Hotelling トレース
(iv) Roy の最大根
いずれの検定も決定則に基づくものであり (admissible)、不偏性 (unbiased) と不変性 (invariant) を備えて
います。(i), (ii), (iii) は漸近的には同一のものとなりますが、帰無仮説が成り立たないときや小標本に対する
挙動は微妙に異なります。(iv) は漸近的にみても (i), (ii), (iii) とは性質を異にします。
c Copyright Math 工房;
⃝
c Copyright StataCorp LP (used with permission)
一部 ⃝
9
Stata12 whitepapers
2. 一元配置 MANOVA – balanced
マニュアルエントリ [MV] manova の Example 1 には Example データセット rootstock.dta を用いた一
元配置 MANOVA の例が紹介されています。
. use http://www.stata-press.com/data/r12/rootstock.dta
*1
(Table 6.2 Rootstock Data -- Rencher (2002))
このデータセットには rootstock, y1, y2, y3, y4 という 5 つの変数が記録されています。rootstock はリ
ンゴの木の根茎を特定するためのカテゴリ変数で 1 から 6 までの値を取ります。それぞれの根茎から得られた
8 本の木について次の 4 種類のデータが記録されています。
変数
意味
y1
4 年時の幹周 (trunk girth)
y2
4 年時の伸長成長 (extension growth)
y3
15 年時の幹周
y4
15 年時の地上部重量
全体では 48 件のデータが存在するわけですが、それぞれのグループに含まれるデータ件数は一律 8 件である
ため、バランスの取れた構成となっています。次はデータの一部をリスト出力したものです。
. list rootstock y1 y2 y3 y4 if n == 1 | n == 9 | n == 17 | n == 25 | n == 33 |
> n == 41, abbreviate(9) separator(0)
1.
9.
17.
25.
33.
41.
*2
rootstock
y1
y2
y3
y4
1
2
3
4
5
6
1.11
1.05
1.07
1.22
0.91
1.11
2.569
2.074
2.505
2.838
1.532
2.813
3.58
4.09
3.76
3.89
4.04
3.76
0.760
1.036
0.912
0.944
1.084
0.800
この場合、y1, y2, y3, y4 はいずれも従属変数となるため、平均値の等値性を検定するには MANOVA を使用
することになります。すなわち、根茎グループ i (i = 1, . . . , 6) の平均値を y 1i , y 2i , y 3i , y 4i とした場合、4 次
元の平均値ベクトル (y 1i , y 2i , y 3i , y 4i ) が i = 1, . . . , 6 まですべて等しいと言えるかどうかを検定しようという
わけです。MANOVA の実行に際しては次のように操作します。
*1
*2
メニュー操作:File ◃ Example Datasets ◃ Stata 12 manual datasets と操作、Multivariate Statistics Reference Manual
[MV] の manova の項よりダウンロードする。
メニュー操作: Data ◃ Describe data ◃ List data
10
Stata12 whitepapers
• Statistics ◃ Multivariate analysis ◃ MANOVA, multivariate regression, and related ◃ MANOVA と操作
• Model タブ: Dependent variables: y1 y2 y3 y4
Model: rootstock
図 1 manova ダイアログ- Model タブ
実行結果: [MV] manova Example 1 p341 参照
出力テーブルの見方について解説を加えておきます。Statistic と書かれたカラムに示されているのはそれ
ぞれ
◦ Wilks のラムダ
◦ Pillai のトレース
◦ Lawley-Hotelling トレース
◦ Roy の最大根
の値です。また df と書かれたカラムには自由度 (degrees of freedom) の値が示されています。一方、F(df1,
df2) というカラムには F 統計量に関連した自由度の値が、F と表示されたカラムには F 統計量の値が示され
ています。最後の Prob>F と表示されたカラムが示す値は F 統計量に対応する p 値です。
テーブル上、W, P, L, R と記された 4 種類の検定結果に関する情報が集約された形で示されているわけですが、
この例では p 値がいずれも 0.0000 であるため、6 個の平均値ベクトルに差はないとする帰無仮説は棄却され
ることになります。なお、欄外の e, a, u というコードの意味については最終行に注釈が付されているわけで
すが、e は分布が正確な F 分布であることを、a は近似的に F 分布であることを、u はレポートされた F 値
が上限値であることを意味します。
MANOVA モデルをフィットさせると今度はどのグループ間に違いがあるのかという点が問題となるわけで
すが、これについては [MV] discrim lda の項をご参照ください。
11
Stata12 whitepapers
3. 一元配置 MANOVA – unbalanced
評価版では割愛しています。
4. 基盤となる回帰モデル
評価版では割愛しています。
5. 二元配置 MANOVA
評価版では割愛しています。
6. MANCOVA
評価版では割愛しています。
7. 反復測定 MANOVA
評価版では割愛しています。
¥
12