SPSS - Python 启动脚本中的函数
SPSS - Python functions in startup script
跟进 ,我正在尝试在 Python 中创建一个 SPSS 自定义函数,以在 SPSS 语法中使用。
我有一个语法运行良好的程序:
begin program.
import spss,spssaux, sys
def CustomFunction ():
#function code here
CustomFunction()
end program.
但我希望 CustomFunction()
在 "normal" SPSS 语法中可用。
标准语法不使用 Python 代码,也不向转换系统添加 Python 函数。如果您有 Python 模块,只需导入该模块即可直接使用其内容。并且不必担心多次导入它,因为 Python 很聪明地忽略了冗余导入。
如果你想使用Python代码作为常规语法,你需要创建一个扩展命令。它们具有标准样式的语法,但在 Python(或 R 或 Java)中实现。其中有许多是随 Statistics 一起安装的,也可以从 Utilities 菜单(或 V24 中的 Extensions 菜单)安装的。有关如何编写这些内容的信息,请参见帮助系统中的 Python 帮助文档和相关主题。
例如,SPSSINC TRANS 扩展命令使 Python 函数可用作转换代码。例如,如果 CustomFunction 按大小写创建或转换变量并存储在 mymodule.py 中,则可能会像这样调用它。
SPSSINC 传输结果=newvar
/公式 "mymodule.CustomFunction(x,y,z)"。
Statistics 启动时会自动加载扩展命令,因此不需要启动脚本。
跟进
我有一个语法运行良好的程序:
begin program.
import spss,spssaux, sys
def CustomFunction ():
#function code here
CustomFunction()
end program.
但我希望 CustomFunction()
在 "normal" SPSS 语法中可用。
标准语法不使用 Python 代码,也不向转换系统添加 Python 函数。如果您有 Python 模块,只需导入该模块即可直接使用其内容。并且不必担心多次导入它,因为 Python 很聪明地忽略了冗余导入。
如果你想使用Python代码作为常规语法,你需要创建一个扩展命令。它们具有标准样式的语法,但在 Python(或 R 或 Java)中实现。其中有许多是随 Statistics 一起安装的,也可以从 Utilities 菜单(或 V24 中的 Extensions 菜单)安装的。有关如何编写这些内容的信息,请参见帮助系统中的 Python 帮助文档和相关主题。
例如,SPSSINC TRANS 扩展命令使 Python 函数可用作转换代码。例如,如果 CustomFunction 按大小写创建或转换变量并存储在 mymodule.py 中,则可能会像这样调用它。
SPSSINC 传输结果=newvar
/公式 "mymodule.CustomFunction(x,y,z)"。
Statistics 启动时会自动加载扩展命令,因此不需要启动脚本。