我有一个python脚本,我希望使用网状软件包从R中运行。我想先在R中分配一些变量,然后将它们传递给脚本。不幸的是,当我运行脚本时,我惊讶地发现python无法识别变量。我在这里想念什么?谢谢
Python脚本(test.py
):
print(x)
R代码:
library(reticulate)
x <- 5
source_python(test.py)
错误:
Error in py_run_file_impl(file, local, convert) :
NameError: name 'x' is not defined
答案 0 :(得分:0)
我想到的解决方案是只创建一个函数。因此,如果在我的python代码之前是
z = x + 3
我的新python代码为:
def add_three(x):
z = x + 3
return z
然后我可以在R中运行:
x <- 5
source_python("test.py")
y <- add_three(x)
将y设为6。