【问题标题】:How do I invoke a sas script in python?如何在 python 中调用 sas 脚本?
【发布时间】:2014-06-23 12:11:28
【问题描述】:

我可以打开一个 sas 实例,但我不确定如何让它运行特定的 sas 脚本。

我使用下面的代码来启动sas:

import subprocess
subprocess.call(['C:\Program Files\SAS\SASFoundation\9.2\sas.exe'])

【问题讨论】:

  • 我的解决方案有效吗?您是否能够根据需要调用 SAS?
  • @Maurice 是的,非常感谢!我可以确认此功能需要 -sysin 选项。此外,我必须在所有路径变量中使用双反斜杠“\\”而不是单个反斜杠才能使其正常工作。
  • 太棒了!我很高兴你能够让它为你工作。祝 SAS 好运!

标签: python sas


【解决方案1】:

您可以通过子进程调用将其他参数传递给 SAS,但您还需要记住的重要事项是:

  1. 您需要告诉 SAS 在哪里可以找到 AUTOEXEC 文件

  2. 您需要告诉 SAS 在哪里可以找到配置文件

我有一个用于调用 SAS 脚本的 shell 脚本,调用如下所示:

sas -config $SAS_CONFIG -autoexec $SAS_AUTOEXEC $SAS_CODE/$1

所以你的电话应该是这样的: subprocess.call(['C:\Program Files\SAS\SASFoundation\9.2\sas.exe', '-config', config_path, '-autoexec', autoexec_path, '-sysin', sas_script_path])

您需要为上述路径设置变量。

祝你好运!

【讨论】:

  • 请注意,如果你在 Unix 上运行,上面的方法可以工作,但如果你在 Windows 下运行,你需要在 sas_script_path 之前使用-sysin
  • 啊,好点。永远没有在Windows中做过。我将修改我的答案以包括 sysin。
  • 我认为 unix 特别不使用它,尽管我目前无法验证。 SAS 很奇怪。
  • 我同意。这是一只奇怪的鸟。当我向其他从未接触过 SAS 的程序员描述 SAS 时,他们看着我就像我在撒谎一样。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-07-23
  • 2016-10-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多