【发布时间】:2020-03-13 20:43:55
【问题描述】:
我有一个名为DataRetrieval.py 的脚本。此脚本连接到内部数据库,检索数据并将该数据写入 Excel 文件。此脚本导入以下内容:
a) 一个包含多个函数的 utils.py 辅助模块
b) 一个DataRetrieval.cfg 配置文件(其中包含DataRetrieval.py 脚本所需的所有登录信息和SQL 查询)
DataRetrieval.py 脚本采用以下 3 个命令行参数:
DataRetrieval.py DataRetrieval.cfg 03/01/20
(脚本本身、配置文件和开始日期)
我想在 R 中使用 Reticulate 包来:
- 调用这 3 个命令行参数中的每一个
- 将脚本的输出(即 Excel 文件)设置为对象(最终目标是在 Shiny 仪表板中调用此对象)
我正在考虑使用source_python() 函数,但我认为它不允许使用多个位置参数。错误信息返回:
> source_python("DataRetrieval.py")
Error in py_run_file_impl(file, local, convert) : SystemExit: 2
usage: python.exe [-h] [-e ENDDATE] config startDate
python.exe: error: the following arguments are required: config, startDate
使用Reticulate 包调用这3 个命令行参数的最佳方式是什么?也许一个单独的 .py 文件封装了上述 3 个参数中的每一个?
谢谢!
【问题讨论】:
-
为什么要使用
reticulate而不是system()的命令行调用,尤其是在R 环境中不需要任何Python 对象的情况下? -
最终目标是使用 Shiny。我们内部的 API 没有暴露给 R。因此,使用了 Reticulate。在该设置中如何使用 system()?
标签: r reticulate