Как ввести аргументы из R в Python с помощью rPython?
Как ввести аргументы из R в Python с помощью пакета rPython?
Ниже наивная попытка
В script.py:
print message
В script.R:
require(rPython)
text = "Hello World"
python.load("script.py", message=text)
Error in python.load("script.py", message = text) :
unused argument (message = text)
1 ответ
Решение
Согласно документации пакета (стр. 5-6) для load
метод:
Эта функция запускает код Python, содержащийся в файле. Как правило, этот файл будет содержать функции, которые будут вызываться через python.call или другие функции в этом пакете.
Следовательно, в Python нет запущенного скрипта, а только определенные функции с возвращаемыми объектами:
Python (script.py)
def print_message(msg):
return msg
R (используя load и call)
require(rPython)
text = "Hello World"
python.load("script.py")
python.call("print_message", text)
#[1] "Hello World"