home > 統計解析のTips > SPSSとRを連携させる方法 |
SPSSとRを連携させる方法 (最終更新 2018年1月1日) |
概要 |
SPSS18以降のバージョンでは、Essentials for R (Essentials and Plugins for Rと表記することもある) というプラグインをインストールすることで、SPSSからRを呼び出して使用することができます。SPSSとRを連携させる手順はおよそ以下の通りになります。
以下では、SPSS19以降のバージョンについて、SPSSとRを連携させる手順を記述します。SPSS18でも基本的には以下と同様の手順になりますが、途中、Essentials for Rの入手方法が異なります。また、Windows系のPCで作業することを想定して記述していますが、MacやLinuxなどでも基本的には同じ手順となります。 |
IBM IDとパスワードを入手する | ページ上部の概要に戻る |
|
フィックス (Fix) を入手する | ページ上部の概要に戻る |
|
Essentials for Rを入手する | ページ上部の概要に戻る |
|
Rを入手する | ページ上部の概要に戻る |
|
フィックスをインストールする | ページ上部の概要に戻る |
|
Rをインストールする | ページ上部の概要に戻る |
|
Essentials for Rをインストールする | ページ上部の概要に戻る |
|
SPSSからRを呼び出して分析できるかを確認する | ページ上部の概要に戻る |
Essentials for Rが無事インストールされ、SPSSからRを呼び出せるようになったかを確認します。以下では試みに、重回帰分析 (最小二乗法) をRに計算させて、その結果をSPSSのビューア画面に表示させてみます。
|
GET FILE='C:\temp\Employee data.sav' . COMPUTE lnsalary=ln(salary) . VARIABLE LABELS lnsalary 'ln (Current Salary)' . IF (gender='m') female=0 . IF (gender='f') female=1 . VARIABLE LABELS female 'Female' . BEGIN PROGRAM R . temp <- spssdata.GetDataFromSPSS() fit <- lm(lnsalary ~ female + educ + jobtime, data=temp) summary(fit) END PROGRAM . |
「BEGIN PROGRAM R .」で始まり「END PROGRAM .」で終わるブロック内が、Rのコードで記述する領域となります。上記のコードを実行すると、SPSSのビューア画面に下記のような結果が表示されます。 |
Call: lm(formula = lnsalary ~ female + educ + jobtime, data = temp) Residuals: Min 1Q Median 3Q Max -0.6037 -0.1813 -0.0185 0.1565 0.8912 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 9.237944 0.116848 79.060 <2e-16 *** female -0.243610 0.025823 -9.434 <2e-16 *** educ 0.080688 0.004458 18.100 <2e-16 *** jobtime 0.001742 0.001197 1.455 0.146 --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 0.2613 on 470 degrees of freedom Multiple R-squared: 0.5703, Adjusted R-squared: 0.5676 F-statistic: 207.9 on 3 and 470 DF, p-value: < 2.2e-16 |
もし上記のような出力結果が得られない場合、Essentials for Rのインストールは失敗しています。手順を再度確認してみてください。
|
REGRESSION /STATISTICS COEFF R /DEPENDENT lnsalary /METHOD=ENTER female educ jobtime . モデル R R2乗 調整済みR2乗 推定値の標準誤差 1 .755 .570 .568 .26128 標準化されていない係数 標準化係数 モデル B 標準誤差 ベータ t値 有意確率 1 (定数) 9.238 .117 79.060 .000 Female -.244 .026 -.306 -9.434 .000 Educational Level (years) .081 .004 .586 18.100 .000 Months since Hire .002 .001 .044 1.455 .146 |
備考 | ページ上部の概要に戻る |
以上で記述した手順は、作業の途中で入手したInstallation Instructionsファイルを解凍すると生成されるpdfファイルに記載されている内容と、基本的には同一のものです。このpdfファイルがもっとわかりやすい場所に置いてあればよいのですが、上記で見た通り、非常にわかりにくい場所にありますので、手順について整理した次第です。
|
home > 統計解析のTips > SPSSとRを連携させる方法 |