| 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を連携させる方法 |