在Python中嵌入R代码
我想在一个Python程序里进行一些计算,但我更希望用R来做其中的一部分。请问可以把R代码嵌入到Python里吗?
4 个回答
4
当我需要进行R语言的计算时,我通常会写一些R脚本,然后通过Python中的subprocess
模块来运行它们。我之所以选择这样做,是因为我安装的R版本(我记得是2.16)当时和RPy不兼容(RPy需要2.14版本)。
所以,如果你已经把你的R安装配置得“正合适”,那么这种方法可能会更好。
8
RPy 是处理这类问题的好帮手。
scipy、numpy 和 matplotlib 这几个包的功能和 R 很相似,而且功能非常全面。不过,如果你想把 R 和其他语言混合使用,RPy 就是最好的选择!
from rpy2.robjects import *
def main():
degrees = 4
grid = r.seq(0, 10, length=100)
values = [r.dchisq(x, degrees) for x in grid]
r.par(ann=0)
r.plot(grid, values, type='l')
if __name__ == '__main__':
main()