本文主要介绍一些 IBM SPSS Statistics 的个性化功能,并提供详细的操作演示。IBM SPSS Statistics 的个性化功能是指,用户可以根据自己的喜好和工作需要,来设计和定制适合自己的菜单、工具栏、对话框,或者通过脚本自动地设置工作环境。通过使用这些功能,用户可以简化工作流程,提高工作效率。

张新坡, 软件工程师, IBM

张新坡,西安交通大学硕士毕业。2007 年加入 SPSS(IBM),一直从事 IBM SPSS Statistics 软件的研发工作。



尉文沛, 软件工程师, IBM

尉文沛,2009 年加入 IBM,进入 IBM SPSS Statistics 团队,工作大部分集中在后台软件的设计和开发工作。



贺子寒, 软件工程师, IBM

贺子寒,2007 年加入 SPSS(IBM),软件工程师,负责 IBM SPSS Statistics 的开发,配置工作。



2011 年 10 月 20 日

IBM SPSS Statistics 是世界上最早的统计软件之一,具有庞大的用户群体。IBM SPSS Statistics 在发展过程中,不断将新的算法和功能添加到软件中。从最开始只具有简单算法的桌面软件系统,到现在功能强大、算法丰富的 CS 架构的专业统计软件,成为预测统计的领导者。但是,算法的丰富以及功能的复杂化,在给用户提供便利的同时,也增加了使用上的难度。

IBM SPSS Statistics 的团队也意识到软件复杂化给用户带来的困扰,所以提供了一些灵活的功能。用户使用这些功能,可以根据自己的需要,在一定程度上定制自己的 IBM SPSS Statistics。本文以实例的形式,对这些功能进行了演示,主要包括个性化菜单、定制工具栏、定制对话框以及自动化脚本等。

个性化菜单

IBM SPSS Statistics 提供了菜单编辑器,使用这个工具,用户可以根据需要定制菜单。比如,用户可以插入新的菜单、创建新的菜单项,并可以使用分隔符格式化生成的菜单项。但是,用户不能够删除 IBM SPSS Statistics 已有的菜单。从 IBM SPSS Statistics 的“视图”菜单可以打开菜单编辑器。

图 1. IBM SPSS Statistics 菜单编辑器
图 1. IBM SPSS Statistics 菜单编辑器

在菜单编辑器中,左边显示已有菜单及菜单项,右边显示用户可以插入的菜单、菜单项及分隔符,而中间则是一些设置选项,比如应用到的窗口,涉及到的关联文件等。通过生成这些菜单项,用户可以运行自定义的命令文件、脚本文件,或者发送数据到其它应用程序。下面,使用菜单编辑器,生成一个执行菜单,其中包含下列菜单项:用户命令、用户脚本、用户统计以及数据发送。

图 2. 生成菜单和菜单项
图 2. 生成菜单和菜单项

如上图所示,在创建菜单项“用户命令”的时候,要指定运行的命令文件。同样,对于其它的菜单项,也要有相应的文件支持。对于图中的 Script 选项,用户可以选择 Basic 语言或者 Python 语言。IBM SPSS Statistics 的默认语言是 Basic。在菜单编辑器中完成添加后,点击确定,生成的菜单就会插入到 IBM SPSS Statistics 的菜单栏中。

图 3. 添加完成的菜单和菜单项
图 3. 添加完成的菜单和菜单项

现在,生成的菜单和菜单项比较简单。与 IBM SPSS Statistics 自带的菜单相比,缺少加速键执行方式。那么生成菜单和菜单项时,使用“执行(&E)”格式,就可以添加加速键,达到和自带菜单一样的效果。通过创建菜单,用户可以使自己的工作更加高效。在后面的使用中,用户可以不断调整,使其更符合需要。


个性化工具栏

与菜单相比,工具栏更加直接、简单地提供常用的功能。IBM SPSS Statistics 具有基本的工具栏选项,比如数据编辑器窗口中的插入变量、选择变量、选择个案、分割文件等,语法编辑器中的语法缩进、切换断点、运行选中内容、运行脚本等,输出查看器中的插入标题、新建标题及新建文本等,这些选项基本能满足用户的需要。对于一些高级用户或者有特殊需要的用户,可以通过工具栏选项创建个性化工具栏,或者修改现有的工具栏。

从 IBM SPSS Statistics 的“视图”菜单,打开“工具栏”菜单项的“设定”选项。

图 4. 工具栏设置对话框
图 4. 工具栏设置对话框

用户可以对已有的工具栏进行编辑,也可以创建自己的工具栏。

编辑工具栏

点击编辑按钮,弹出编辑工具栏对话框。

图 5. 编辑工具栏
图 5. 编辑工具栏

在“类别”一栏,显示 IBM SPSS Statistics 现有的菜单项以及常用的编辑选项;右边的“工具”一栏,显示相应菜单下面的选项。这些选项,都可以直接拖到下面的“设定工具栏”中,作为工具栏的一项。如果已有的工具不能满足要求,用户可以点击“新建工具”按钮,创建新的工具。对于新工具的创建过程,用户可以参考菜单的创建过程,这里不再一一详述。

下面,通过实例来演示对现有工具栏的编辑。首先,将左边三个工具移动到其它位置,然后,填入“停止处理程序”、“关闭”、“开关服务器”到空位上,点击“继续”按钮,生成修改的工具栏,如下图所示。从图中可以看出,新拖入的三个工具,显示在工具栏的最左边。

图 6. 编辑完成的工具栏
图 6. 编辑完成的工具栏

创建工具栏

对于一些高级用户,可能不会满足于对现有工具栏的修修补补,那只有创建新的工具栏。在前面提到的“显示工具栏”对话框中,点击“新建”按钮。在弹出的对话框中输入工具栏名称,比如“常用统计方法”,点击“编辑”按钮。

图 7. 新建工具栏
图 7. 新建工具栏

在“类别”一栏中,选择“分析”菜单,右边“工具”栏显示所有的分析算法。 从列出的算法中,选择常用的算法,并拖到下面的“设定工具栏:常用统计方法”中,生成个性化工具栏。比如,将“一般线性模型”、“分类”、“回归”、“抽样”等选项拖入到下面的工具栏中,点击“继续”按钮,创建工具栏。如下图所示。

图 8. 显示新建工具栏
图 8. 显示新建工具栏

有了“常用统计方法”工具栏,直接点击相应的工具,就可以运行相应的算法,节省了从菜单中翻找的时间。


对话框生成器

IBM SPSS Statistics 提供了对话框生成器,用户可以使用它创建个人版本的对话框。对于软件内置的统计算法,用户可以通过定制对话框来提前设定需要的标准,从而使算法运行时遵循设定的标准输出结果;对于 IBM SPSS Statistics 中一些没有操作界面的功能或者扩展命令(扩展命令是用户自己的定义的 IBM SPSS Statistics 命令,采用 Python 或者 R 编程语言实现),可以生成用户界面。使用对话框生成器生成的对话框,可以 保存为“.spd”文件。在后面的应用中,可以在对话库生成器中安装、编辑“.spd”文件。这样,也方便不同用户之间共享。

从 IBM SPSS Statistics “实用工具”菜单下的菜单项“定制对话框”,打开“自定义对话库构建程序”。

图 9. 自定义对话框生成器
图 9. 自定义对话框生成器

在上图的对话框生成器中,中间面积最大的区域是“画布”,是设计对话框布局的地方。右边弹出的长方形窗口是“工具调色板”,它提供了一组定制对话框过程中所用到的控件。“画布”的下方区域叫“属性窗格”。当用户选中“画布”中的控件时,“属性窗格”就会显示该控件的属性。在 IBM SPSS Statistics 提供的控件中,既包含常见的对话框组件(如:复选框、组合框、列表框、文本控件、静态文本等),也包含 IBM SPSS Statistics 特有的控件(如:源列表、目标列表)。

下面,以 SyntaxConverter 为例,详细讲解自定义对话框的过程。SyntaxConverter 是 IBM SPSS Statistics 提供的一个实用转换工具,它可以将包含 TABLBES 和 IGRAPH(注:从版本 17 开始,IBM SPSS Statistics 不再支持这两个命令)的命令文件转化成 CTABLES 和 GGRAPH 的命令文件,从而实现对旧版本的兼容。SyntaxConverter 是一个命令行程序,其运行语法如下。

syntaxconverter.exe [-b] [path]/inputfilename.sps [path]/outputfilename.sps

其中,输入文件和输出文件这两个参数是必须的。参数“-b”是根据输入文件中的命令格式来选择。如果是交互模式,即每条命令都另起一行且以点号结尾,则需要使用参数“-b”。根据 SyntaxConverter 的参数,来搭建合适的用户界面。

图 10. SyntaxConverter 的自定义对话框
图 10. SyntaxConverter 的自定义对话框

从“画布”中可以看出,定制的对话框使用两个“文件浏览器”组件来表示输入、输出文件,两个复选框来表示交互模式以及系统类型。在对话框的属性中,定义了对话框的“菜单位置”,这个可以通过“编辑”菜单进行设置。另外,“语法”属性指定了对话框生成的命令模式。如果想了解详细的信息,可以点击“语法”属性的省略号 (...) 按钮,弹出语法模板对话框。

图 11. 语法模板对话框
图 11. 语法模板对话框

该模板详细说明了如何将对话框中的控件插入到命令中。用户根据需要在合适的地方插入控件的标识符,就可以生成正确的命令。

到目前为止,需要的对话框已经编辑完成,下一步就要安装设计的对话框。先从“文件”菜单选择“保存”,然后选择“安装”。在指定的菜单位置(实用工具 -> 命令转换器)就会出现刚创建的对话框。

图 12. TABLES 和 IGRAPH 命令转化器对话框
图 12. TABLES 和 IGRAPH 命令转化器对话框

通过上面的流程,使用 IBM SPSS Statistics 的对话框生成器构建出了个性化对话框。除了对话框生成器,IBM SPSS Statistics 还支持 Script 脚本。通过编写脚本语言,用户也可以定制对话框。但是,那要求用户具有熟练的 Script 编程技巧。在下面的章节中,会介绍一些 IBM SPSS Statistics 支持的 Script 编程,用来提高用户的使用效率。


自动化脚本

脚本是 IBM SPSS Statistics 提供的扩展功能,通过 Basic 语言或者 Python 语言实现。使用脚本,用户可以自动化任务,或者根据需要定制 IBM SPSS Statistics 的输出,如表、图等。本章主要介绍三种可以帮助用户实现个性化的脚本:启动脚本、基础自动化脚本以及针对单个对象的自动化脚本。

启动脚本

顾名思义,启动脚本就是在 IBM SPSS Statistics 客户端启动,或者切换服务器时执行的脚本。该脚本可用于数据分析前的系统准备工作。在 Windows 上面,可以使用 Basic 和 Python 语言实现该脚本;在其它平台上,只能使用 Python 语言。下面,主要介绍使用启动脚本的一些规则。启动脚本必须以 StartClient 或者 StartServer 命名,并且存放于 IBM SPSS Statistics 安装目录的 scripts 文件夹中。在 Windows 平台上,如果具有 Basic 和 Python 两个版本的启动脚本,则 Python 版本的启动脚本优先执行。如果 StartClient 和 StartServer 启动脚本同时存在,则先执行 StartClient 脚本,后执行 StartServer 脚本。下面,是 StartServer 脚本的一个简单示例。

图 13. StartServer 脚本
图 13. StartServer 脚本

在示例的脚本代码中,SpssClient.RunSyntax 函数用于运行“HOST COMMAND”。当 IBM SPSS Statistics 切换服务器时,该脚本就会在服务器端运行,设置一个名为 TMPDIR 的环境变量。当然,用户可以在“HOST COMMAND”中加入其它命令,实现想要的功能。

基础自动化脚本

基础自动化脚本,是应用于所有对象的脚本。用户可以在选项对话框(从“编辑”菜单可以打开选项对话框)中选择要运行的基础自动化脚本。

图 14. 脚本选项对话框
图 14. 脚本选项对话框

在红色长方形标注的区域,选择启用自动脚本,选择的脚本文件是 IBM SPSS Statistics 自带的 ExportTablesToExcelFiles.wwd(该脚本可以将表格导出到指定的 Excel 中)。点击“应用”按钮,然后点击“确定”,设置完成。

在 IBM SPSS Statistics 中打开数据文件,并运行“频率”统计算法,在输出中就会生成一些表格。最后,会弹出一个对话框,也就是基础自动化脚本运行生成的对话框。

图 15. 表格导出对话框
图 15. 表格导出对话框

在这个对话框中,用户可以选择要导出的表格,以及生成的 Excel 文件的名字。通过使用自动化脚本,用户可以方便地管理输出,或者通过在脚本中指定一些规则来定制输出。

单一对象自动化脚本

单一对象自动化脚本和基础自动化脚本作用基本一样,不同的是前者作用于指定的对象,后者作用于所有的对象。下面,主要通过图示介绍一下单一对象自动化脚本的设置,而对于其效果,不再赘述。同样,从选项对话框中打开脚本页面。

图 16. 单一对象自动化脚本设置对话框
图 16. 单一对象自动化脚本设置对话框

在“基础自动脚本”的下方,可以看到“单一对象自动脚本”区域。在左边的“命令识别”栏中选择 Frequencies,“对象和脚本”栏中的对象选择 Frequencies Table。点击“脚本”一栏的省略号,就会弹出脚本选择对话框,用户可以选择运行的脚本。设置完成后,当用户运行 Frequencies 算法时,选定的脚本就会作用于生成的 Frequencies Table。


小结

本文从方便用户使用的角度,介绍了 IBM SPSS Statistics 中的个性化菜单、定制工具栏、个性化对话框及自动化脚本。通过相关示例,对这些功能做了详细的演示。提高用户的满意度和软件的可用性,一直是 IBM SPSS Statistics 努力的方向,相信在后续的版本中,会提供更多方便用户的功能。

参考资料

学习

获得产品和技术

  • 下载 IBM 软件试用版,体验强大的 DB2®,Lotus®,Rational®,Tivoli®和WebSphere®软件。

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Information Management
ArticleID=766802
ArticleTitle=IBM SPSS Statistics 的个性化应用
publish-date=10202011