首先是环境的准备。在已经安装了 SPSSStatistics 和 R 语言的环境中,需要新安装软件包SPSS Statistics Essentials for R 来实现在 SPSS Statistics 中调用 R 语言。这个新的软件包就像一座桥梁将两个统计分析软件联系起来。
但应注意的是,针对不同的SPSSStatistics 版本,需要有相对应的R语言版本和 SPSSStatistics Essentials for R版本来匹配,其中SPSS Statistics 24.0对应的R版本是3.2.x。下面我们就来介绍在 SPSSStatistics 中调用 R 的最简单实现过程。
步骤1、通过 SPSS Statistics 菜单:文件 --> 新建 --> 语法,打开语法编辑器,如图E-12所示。
图E-12 使用语法编辑器
步骤2、在编辑框中输入对应的语法脚本。
嵌入 R 代码的基本语法结构:
BEGIN PROGRAM R.
……
中间为R代码
……
END PROGRAM
代码1:调用quantreg包中的engel数据集并画图
BEGIN PROGRAM R.
library(quantreg)
demo(engel1)
END PROGRAM.
步骤3、选取该段语法,执行菜单的:运行-->运行选定项,或点击绿色三角形图标,如图E-13所示。
图E-13 在语法框中输入脚本
R代码分析的结果就输出在 SPSSStatistics查看器中,如图E-14所示。
图E-14 程序结果输出
以上是在 SPSS Statistics 中嵌入R代码的最简单形式。如果希望在 R 代码中使用 SPSS Statistics 数据编辑器中的数据集,可以使用函数spssdata.GetDataFromSPSS()。首先在SPSS的数据编辑器中打开 SPSS 的实例数据(如demo.sav),在语法编辑器中执行以下的代码。
代码2:使用SPSS Statistics编辑器中的数据
BEGIN PROGRAM R.
demodata<- spssdata.GetDataFromSPSS()
mean(demodata$age)
END PROGRAM.
就可以计算得到 age 字段的均值,如图E-15所示。
图E-15 程序结果输出