4

有没有办法从 SPSS 中运行 Windows 命令行?

我正在使用 SPSS BEGIN PROGRAM 程序不支持的程序,我想从我的 SPSS 语法运行命令行(我对输出不感兴趣,我不需要导入/导出任何 SPSS数据我只想从 SPSS 中运行 cmd 行)。

举一个使用免费软件的简单示例,假设我想在我的 SPSS 语法末尾运行我的 R 脚本,但这仅适用于 SPSS 不支持的版本(例如,目前 SPSS 21 支持 R 2.14,假设我绝对需要在我的 Windows PC 上安装的 R 2.15 上运行它),有没有办法运行

R CMD BATCH C:\Files\MyRcode.R

在 SPSS 语法中?

这相当于以批处理模式运行程序(在本例中为 R)。我需要使用的程序不是R,它只是一个例子。

据我所知,SPSS 无法做到这一点,但也许使用 python(通过 SPSS BEGIN PROGRAM PYTHON)可以使用 Python 运行命令行?

谢谢

PS 对于之前可能没有使用过 SPSS 的 Python 用户,理论上应该能够使用 SPSS 从 SPSS 中运行任何 Python 代码

BEGIN PROGRAM PYTHON.
Run some Python code
END PROGRAM.
4

1 回答 1

4

是的,你可以用 Python 代码做到这一点:

BEGIN PROGRAM PYTHON.
import subprocess
subprocess.call(['C:\\R\\R.exe', 'CMD', 'BATCH', 'C:\\Files\\MyRcode.R'])
END PROGRAM.

或者,直接用这个:

HOST COMMAND=['R CMD BATCH C:\Files\MyRcode.R'].

备择方案:

  • 将其放入批处理文件中,然后执行它,例如使用os.system().
  • SCRIPT通过命令执行 Python 或 Basic 脚本。
于 2013-04-05T11:50:40.070 回答