SPSS ときど記(151〜160)
SPSSを使っていてトラぶったところや変な出力や裏技表技の便利な使い方を中心に書き留めてみる。何回話題があるかわからですが,時々書きます。(Keizo Hori)
最終更新日:
(2003/10/23から)
(141)〜(150) ときど記(メニュー)へ
(161)〜(170)
- SPSS ときど記(160) 2004/ 1/ 7 SPSS12J SPSS12がやって来た
- SPSS ときど記(159) 2003/12/ 9 AMOS Bayes factors, BIC
- SPSS ときど記(158) 2003/12/ 8 statistica statistica 03J
- SPSS ときど記(157) 2003/12/ 5 help systat 10.2
- SPSS ときど記(156) 2003/11/29 因子分析 3相因子分析
- SPSS ときど記(155) 2003/11/28 因子分析 因子数決定法3部作
- SPSS ときど記(154) 2003/10/30 AMOS 5.0(日本語対応版) 文字コード
- SPSS ときど記(153) 2003/10/30 excel excel からSPSSを起動し,syntax を走らせる
- SPSS ときど記(152) 2003/10/27 12.0(日本語対応版) バージョンアップの連絡くる
- SPSS ときど記(151) 2003/10/23 AMOS 5.0(日本語対応版) ときどき出力が表示できないなど不安定
SPSS12J SPSS12がやって来た
SPSS 12jがやってきた。実は去年の暮れに来ていた。さっそくインストールしたら,なぜかBASE しかインストールされなかった。WINDOWS 98 との問題かと思い,さっそくSPSS サポートにメールしてしまった。昨日,12を削除後に再インストールしたところうまく全部インストールできた。
ただ,カスタムで行ったのですが,
>この機能をインストールするには,ローカルのハードディスクドライブに0KB必要です。
のメッセージはがでていてインストール時に不安を感じさせた。
また,インストール時のメッセージにでてくるバージョンとインストール後のヘルプでみるバージョンが異なっているのが気になる。
InstallShieldウィザード 「バージョン 12.2.x」
help のバージョン 「リリース 12.0.1J (11 Nov 2003)」
いくつか細かい点でよくなっていた。例えば因子分析のスクリープロットの見栄えがよくなった。3次元プロットは相変わらずわかりにくいが変わっている。
SPSS Complex Samples. 12.0Jに
>Complex Samples のコマンドシンタックスは、製品のCD-ROM に付属の『Complex Samples SPSS 12.0 Command Syntax Reference』に含まれています。
というのは嘘だ。そのようなREFERENCEはない。英語版では
>The Complex Samples command syntax is included in the SPSS 12.0 Syntax Reference Guide, available on the product CD-ROM.
となっている。C:\SPSS\spssbase.pdf(C:\SPSS\にあることを前提にリンクを張っている)のファイルである。
Complex Samples は使ってみないとよくわからない。
数量化3類スクリプトが11.5では走っていたのが,エラーがでてくる。SET MXMEMORY がらみのエラーである。11.0から無効なコマンドであるが,エラーが発生してしまう。END MATRIX の表示がでるのに,MATRIX 計算を終了できない,変なエラーである。原因はよくわからないが,スクリプトの方はバグフィックスのみした。MXMEMRORY 指定する窓はそのまま残している。マクロのほうも SET MXMEMORY の指定をしなければちゃんと動き,指定するとバグる。原因はよくわからないが,とりあえずバグはフィックス。
アルゴリズムも書き換えをしていて,文献が充実したものがある。例えば crosstabs.pdf, ratio.pdfなんかも新しい。タイムスタンプをチェックしてください。
ps.2004/1/8
mixed model の訳が変更になった。複合モデル→混合モデル。
spssサポートに注文していたのが通った。
メニューへ トップへ (161)へ
AMOS Bayes factors, BIC
AMOS の解説書にモデルのBICの差2について言及がある。論文は Raftery(1995) である。
表1 M1に対するM2のモデルの優位性
BIC差 | Bayes Factor | p(M2|D)(%) | evidence
|
0-2 | 1-3 | 50-75 | weak
|
2-6 | 3-20 | 75-95 | positive
|
6-10 | 20-150 | 95-99 | strong
|
>10 | >150 | >99 | very strong
|
BIC はベイズ因子と結びつけられて2以内ならたいして変わりがないと判断するのである。単純にBICが最小のモデルを選ぶのでなく,たいして変わりのないモデル群を選択するのをオッカムの窓と呼び,そのなかから適切なモデルを選び出す。AMOSのモデル特定のための探索因子分析では残すモデルの数を指定することになる。BIC最小のモデルのBICを基準として相対的な値が表示される。
BICだと,p値のようなサンプルサイズによる影響を受けない。χ2検定のようにサンプルサイズが大きくなると小さな差でも有意になることがない。それをRafteryは次の表にまとめている。
表2 evidence の程度に対応するおおよその両側検定のp値
| | サンプルサイズ
|
evidence | BIC差 | 30 | 50 | 100 | 1,000 | 10,000 | 100,000
|
weak | 0-2 | .076 | .053 | .032 | .009 | .002 | .0007
|
positive | 2-6 | .028 | .019 | .010 | .003 | .0008 | .0002
|
strong | 6-10 | .005 | .003 | .001 | .0003 | .0001 | .00003
|
very strong | >10 | .001 | .0005 | .0001 | .00004 | .00001 | .000004
|
Raftery(1995)が論文としてはまとまっている。簡単に見るにはGrynaviskiのパワーポイントがいいだろう。これによると,WinBUGSには新しい指標がある。AICについてはKass and Raftery(1994)が言及している。BICのほうがいいという論文を参照できる。AICの差が2についてはRaftery(1995)ではなにもいっていない。坂元慶行の本を見よ。もしくは,Grynaviskiの式から考えてみよ。
文献
Grynaviski, J. Bayesian Hypothesis Testing and Bayes Factors. http://home.uchicago.edu/~grynav/bayes/ABSLec14.ppt
Kass and Raftery(1994). Bayes Factors http://www.stat.washington.edu/tech.reports/tr254.ps.
Raftery, A. (1995). Bayesian model selection in social research. In P. Marsden (Ed.), Sociological Methodology 1995 (pp. 111-163): San Francisco.
Rafteryのサイト
Adrian Raftery: Research
論文がある。
メニューへ トップへ (160)へ
statistica statistica 03J
statistca 03J の案内が来た。英語版はstatistica 6 のようだ。日本のホームページにアクセスしたところ,日本語版のほうはまだバージョンアップの案内はない。日本語版はバージョンアップ先行販売になっている。英語のホームページでは新版の紹介がある。
いくつか大きな改良をしている。statistica は処理すると,図とか数表とか別々の窓になってそれが煩瑣だったのだが,今回はまとめることができるらしい。統計機能としては,主成分分析/分類分析,一般線形モデルと一般化線形/非線形モデルが付け加わっている。一般線形モデルと一般化線形/非線形モデルはかなり魅力的だ。
主成分分析/分類分析は拡張分析ができるようになっている。それも変数とケース両方ともにである。変数の拡張分析のスクリプトは 拡張因子分析・高次因子分析 scriptにある。分類は主成分分析の結果の図のクラスターをカテゴリー境界をつけることができるようだ。これは現物を見ないとわからない。
basic をvisual basic 互換にしている。SPSSのbasic より柔軟性がありそうだ。
statistica のバージョンアップ金額が高いのでsystat に乗り換えてみようと思う。SPSSにない機能がいっぱいあるし,共分散分析を図から処理できる。
メニューへ トップへ (159)へ
help systat 10.2
systat の日本語版のデモバージョン(SYSTAT Version 10.2 for Windows)が公開されている。
http://www.hulinks.co.jp/software/systat/
ヘルプは充実しているとは言えないが,シンタックスのキーワードからリンクして説明を見ることができる。SPSSでもはやくこのようにしてほしい。
乗り換えキャンペーンは価格的には魅力的だ。しかし,因子分析なんかをみると機能的にはSPSSのほうがいい。お試し期間に試してみるのもいいだろう。SPSSのオプションやSPSSにない統計も含まれているので興味深い点がある。
対数線形モデルではRaftery の BIC(ベイズの情報量基準)を出力する。いくつかの研究からAICよりもBICのほうがいいという結果もでているので興味深い。
statistica もバージョンアップの連絡が来た。
PS. 2003/12/08
systat の機能については,バージョンアップしたhelp を見る方がわかりやすい。
メニューへ トップへ (158)へ
因子分析 3相因子分析
spss ネタではない。3相因子分析の面白い論文がでている。
3相というのは,SD法の概念,形容詞,個人の3つをそれぞれ因子分析してしまうものである。通常の因子分析は2相であり,個人の因子はつぶしてしまう。3相主成分分析といったほうがいいか,3相分析ともっとあいまいにしたほうがいいのか。
豊田秀樹(2001). 探索的ポジショニング分析−セマンティック・デファレンシャルデータのための3相多変量解析法 心理学研究, 72(5), 392-403.
豊田秀樹(2001). 確認的ポジショニング分析−印象変化の発見と認知的マップの評価のための多変量解析法 心理学研究, 72, 213-218.
豊田は構造方程式モデリングを使用すて実現している。
村上隆さん@名古屋大学の
Murakami, T. and Kroonenberg, P. M.(2003). Three-Mode Models and Individual Differences in Semantic Differential Data. Multivariate Behavioral Research, 38(2), 247-283.
では,以前からの3相因子分析を展開させている。軸の回転が入っているし,因子数の決定法についても言及している。もっとも,これだけ大げさな枠組みででてきた結果についてはちょっとがっかりだ。
3相の場合,indscal が有名である。個人差が形容語の軸の重みの違いで表されるというものである。紅茶の好みの分析が行われている。
村上さんの3相因子分析に制約を加えたモデルもなかなか面白い。
3相を扱う場合,尺度の因子がかなり明確でないと分かりにくいものとなるだろう。また,個人差といいながら多くの個人を扱うとわかりにくい結果になるようだ。
豊田,村上の論文は今後の分析の指針となることは確かだろう。
ps.2003/12/18
3相因子分析解説のサイト
An interactive introduction to The Tucker3 model in Chemometrics
The Three-Mode Company P. M. Kroonenberg
古いが日本語
吉田『心理統計学』丸善
メニューへ トップへ (157)へ
因子分析 因子数決定法3部作
因子分析の因子数決定法について試行を重ねてきた。
- parallel analysis (因子分析の因子決定法)(2001/8/31)
http://www.ec.kagawa-u.ac.jp/~hori/yomimono/pa.html
- 因子数決定法の検討−Holzinger and Swineford(1939)の知能データをもとにして(2003/3/23)
http://www.ec.kagawa-u.ac.jp/~hori/yomimono/pa2.html
- 因子分析練習帳1 Gorsuch(1983)変数サンプリング(2003/11/27)
http://www.ec.kagawa-u.ac.jp/~hori/yomimono/fanote1.html
1 において実験データを中心に平行分析'parallel analysis)の良さを示した。ただし,対角SMCの95%点平行分析である。MAPが最小因子数,対角SMCの95%点平行分析が最大因子数としてその間に適正な因子数がある。
2 において,基本的に同一とみなせるデータに基づき,因子数推定の安定性をみた。ここでは最尤法だけを使用した。SEMにおいて使用される適合度指標を同時に健闘し,MAPと対角SMCの95%点平行分析がきわめて安定した指標となっていることを示した。適合度指標は多くが安定性という面で不適格であることも示した。
3 において,人工データを使用しいくつかの変数サンプリングによっても対角SMCの95%点平行分析(PA-SMC-95およびPA-SMC-M)がよい予測をすることを示した。
カイザー基準(固有値1以上基準)は1〜3からもよくない基準であることを示した。
(1)カイザー基準は誤差に対する考慮がない。その点で対角1の平行分析が生まれている。この点においてカイザー基準は,因子数を多めに見積もってしまう可能性が高い。
(2)対角1の平行分析においていわれているように,第1固有値に関しては適切な推定であったとしても,第2固有値以降については適切な推定とはいえない。つまり,第1因子が一般因子である場合,第2因子以降の固有値は小さくなる。そのため対角1の平行分析は因子数を少なめに見積もってしまう可能性が高い。
(1)(2)があわさってカイザー基準は時として正しい因子数を当てるかもしれないが,因子数がそれで多いか,少ないかも同定できない不安定で理論的に未熟な指標となる。
今後の問題解いて対角SMCの95%点平行分析とMAPの推定数のギャップが生じる原因を調べることである。一つは対角SMCの95%点平行分析がマイナーな因子を拾ってしまうのではないかという点である。
なお,SPSSのスクリプトもあります。
メニューへ トップへ (156)へ
AMOS 5.0(日本語対応版) 文字コード
AMOS5.0での文字コードに不満がある。日本語モードのとき,図の係数の文字がデフォルト書体となっている。これを英語モードの既定値のarialに替えると文字が見やすくなる。微妙な違いだが,arial のほうがフォントが少し大きい。縮小をかけているが,同じ縮小になるようにしている。もともとAMOSの図への出力が見にくい。
出力の文字コードが unicode の UTF-8 になっている。そのままcut & paste して,html ファイルに持ち込むと文字化けする。自分で作るときのhtml ファイルがshift-JIS だからである。wz5.0なら一度amosoutput ファイルを読み込めば一括文字コード変換をしてくれる。wz3.0 なら見ることもできない。不便。shift-jis ではダメだったのだろうか。
英語モードでも出力において,モデル番号 1,グループ番号 1と日本語が出力される。最初のほうは,Group number 1になっていたりする。日付はsytem の設定を取り出しているのだろうから仕方がないとしよう。
メニューへ トップへ (155)へ
excel excel からSPSSを起動し,syntax を走らせる
excel のvbaからSPSSを起動し,syntax を走らせることができる。spss-x メーリングリストにある。
次のようにする。
Public Sub dospss()
Set oApp = CreateObject("SPSS.Application")
Set oDoc = oApp.NewDataDoc
oDoc.Visible = True
'ここを適当にコマンドを入れる。script の時と同じ。ここではファイルを読み込んでいる
sCommands = "GET FILE = 'C:\SPSS\dataset\Country.sav'." &vbCrLf
'sCommands=sCommands+"適当に. "つないでいく。行の最後に &vbCrLfがいる。
oApp.ExecuteCommands sCommands, True
End Sub
SPSSが勝手に立ち上がるのが面白い。widows98で実行すると,excel を終了させるときにhang-upする。システムリソースが不足する。メモリー管理がきちんとしているOSで試みてください。
syntax をsCommands=sCommands+"honyarara." &vbCrLf に変換するのにはscript 用のsyntax を scripts に変換する(syntax2scripts.lzh)が便利。これはstrCommandという変数名。
メニューへ トップへ (154)へ
12.0(日本語対応版) バージョンアップの連絡くる
spssジャパンからspssのバージョンアップの連絡がきた。
http://www.spss.co.jp/campaign/spss12.html
に新機能の説明。
今回は早い。
メニューへ トップへ (153)へ
AMOS 5.0(日本語対応版) ときどき出力が表示できないなど不安定
これは言語を英語にしても生じる。
(1)モデルを指定して走らせて「出力の書込み」表示があり,正常に終了しても出力を表示できないことがある。アイコンもメニューのテキスト表示もグレーになったままである。フォルダーを見ると出力ファイルができている。一度これが起こると,その awmファイルを使っている限りそのamos のセッションでは連続して起こる。awmファイルを替えると正常に出力できる。また,もう一度前のamwファイルを使用するとうまくいったりする。要するに不安定なのである。どういう条件でそうなるかわからない。
(2)パラメータ数が不足しているモデルを走らせると,反復を繰り返しても収束しない場合がある。このとき反復数を200(あるモデルでは177まではOKで178から問題)など大きくしているとエラーが生じてコントロールが戻らなくなることがある。これまた不安定なのである。反復回数制限の指定は分析のプロパティ→数値解析→反復回数の制限
問題は2つ。
(1)反復が最大になるとエラーになってしまう。
(2)エラー後コントロールが戻らない。結局 ctrl+alt+del を使わないと終了できない。
対策
(1)に対して,直接,出力ファイル(拡張子.AmosOutput)をダブルクリックして出力を見る。
(2)に対して反復数の指定は150程度に抑える。既定値は50, 検索では100より大きいとそれでいいか確認のダイアログボックスが開く。
p.s. 2003/10/27
その後出力に表題だけが書かれてあとはない場合が生じることがあった。
(1)の対策としては
別のamw ファイルを呼び出し,一度走らせる。その後もう一度トラブったamw ファイルを呼び出し走らせる。
というのがよいことがわかった。
メニューへ トップへ (152)へ
堀 啓造ホームページへ