从Python脚本返回值到R并存储这些值

2 投票
2 回答
753 浏览
提问于 2025-04-18 12:02

基本上,

我成功地在 R 中执行了一个 Python 脚本。不过,我不知道怎么把 Python 脚本中的值返回到 R 中,并把这些值存储在 R 里,特别是当我的 Python 脚本里有多个函数的时候。

我应该在 Python 脚本中添加什么内容才能实现这个过程呢?

注意:假设我一开始从 R 向 Python 传入参数 python test.py arg1 arg2 arg3

以下是我写的 test.py 脚本。

#!/usr/bin/python

import sys


jd = sys.argv
def testing(jd):
    print 'Number of arguments:', len(jd), 'arguments.'
    print 'Argument List:', str(jd)
    return jd

def testing2():
    return 123123


testing(jd)
testing2()

2 个回答

0

我建议你看看 R/SPlus 这个链接:http://www.omegahat.org/RSPython/

它可以让你在 R 里面调用 Python 的脚本和模块中的函数,并且返回的值是 SEXP,这是一种 R 里通用的数据类型。

1

你想要的不是很清楚。获取简单的输出其实很简单:

a = system('python -c "print \\"test\\""', intern = TRUE)
a
#[1] "test"

撰写回答