SPSS 中的动态文件路径
Dynamic file path in SPSS
目前我将文件保存到绝对文件路径SAVE OUTFILE='my/path/to/file.sav'
。这不是最优的,所以我想将文件保存到 dynamic/relative 文件路径,如 SAVE OUTFILE='file.sav'
.
所以我需要设置当前目录,但这也和上面一样有效CD 'my/path/to/'
然后保存。但是我想知道SPSS在打开文件时是否不能自动设置目录?我们通常有很多人使用相同的语法,我们总是不得不更改绝对文件路径。
编辑:正如 Jignesh Sutar 所说,我也可以使用 python 扩展。所以我想我可以使用一些简单的东西,比如:
BEGIN PROGRAM.
import spss,spssaux, os, SpssClient
SpssClient.StartClient()
path = SpssClient.GetCurrentDirectory()
print path
spss.Submit(r"""CD = '%s'.""" % (path))
SpssClient.StopClient()
END PROGRAM.
但上面实际上只输出脚本,没有其他内容,但是,另一个简单的情况是:
BEGIN PROGRAM.
import spss
firstvar=spss.GetVariableName(0)
print firstvar
END PROGRAM.
这确实工作正常。
SPSS 有一个 FILE HANDLE
and CD
命令(正如您也指出的那样),有助于尝试使这些类型的事情变得更容易。
但是我选择了一种不同的方法,我所有的工作设置都可以使用,如果你使用 Python 也可以实现。
您可以使用 python 获取(保存的)语法文件的动态位置,如下所示:
os.path.dirname(SpssClient.GetDesignatedSyntaxDoc().GetDocumentPath())
我过去发布了一个详细的解决方案,您可以找到 并且可能对您的情况也有帮助。
另一种可能是使用 STATS OPEN PROJECT 扩展命令。这将打开一个项目并执行它定义的操作。它可以打开数据文件、运行 任何语法等。您可以拥有一个主项目来完成您一直想要的事情,以及子项目来完成特定的工作。如果需要,可以将其设置为在 Statistics 启动时执行此操作。
STATS OPEN PROJECT 可以从 V24 中的“扩展”菜单或 V22 或 23 中的“实用程序”>“扩展命令”安装。
目前我将文件保存到绝对文件路径SAVE OUTFILE='my/path/to/file.sav'
。这不是最优的,所以我想将文件保存到 dynamic/relative 文件路径,如 SAVE OUTFILE='file.sav'
.
所以我需要设置当前目录,但这也和上面一样有效CD 'my/path/to/'
然后保存。但是我想知道SPSS在打开文件时是否不能自动设置目录?我们通常有很多人使用相同的语法,我们总是不得不更改绝对文件路径。
编辑:正如 Jignesh Sutar 所说,我也可以使用 python 扩展。所以我想我可以使用一些简单的东西,比如:
BEGIN PROGRAM.
import spss,spssaux, os, SpssClient
SpssClient.StartClient()
path = SpssClient.GetCurrentDirectory()
print path
spss.Submit(r"""CD = '%s'.""" % (path))
SpssClient.StopClient()
END PROGRAM.
但上面实际上只输出脚本,没有其他内容,但是,另一个简单的情况是:
BEGIN PROGRAM.
import spss
firstvar=spss.GetVariableName(0)
print firstvar
END PROGRAM.
这确实工作正常。
SPSS 有一个 FILE HANDLE
and CD
命令(正如您也指出的那样),有助于尝试使这些类型的事情变得更容易。
但是我选择了一种不同的方法,我所有的工作设置都可以使用,如果你使用 Python 也可以实现。
您可以使用 python 获取(保存的)语法文件的动态位置,如下所示:
os.path.dirname(SpssClient.GetDesignatedSyntaxDoc().GetDocumentPath())
我过去发布了一个详细的解决方案,您可以找到
另一种可能是使用 STATS OPEN PROJECT 扩展命令。这将打开一个项目并执行它定义的操作。它可以打开数据文件、运行 任何语法等。您可以拥有一个主项目来完成您一直想要的事情,以及子项目来完成特定的工作。如果需要,可以将其设置为在 Statistics 启动时执行此操作。
STATS OPEN PROJECT 可以从 V24 中的“扩展”菜单或 V22 或 23 中的“实用程序”>“扩展命令”安装。