2017-02-23 67 views
0

将外部r_test.r文件连接到python代码(使用rpy2通过python运行r文件)的方式如下。使用动态路径将R文件连接到python时出现问题。

r(''' source('r_test.r') 
    ''') 

这并不在我的烧瓶应用程序。所以我试图得到完整的网址和使用相同的功能

r(''' source('/Users/flyn/...../some_flask_app/scr/Configuration/app/api/scripts/r_test.r') 
    ''') 

这工作。现在要做到这一点,我尝试了这一点。

global_loc = global_loc = os.path.dirname(os.path.realpath(__file__)) 
r_loc = global_loc+'/r_test.r' 
r(''' source(r_loc) 
    ''') 

这没有奏效。它抛出一个错误:'找不到'object'r_loc'。 所以我的问题是,
1.我将如何能够将字符串传递给r('''''')段?
2.有没有更好的方法来处理这个问题?

回答

1

尝试使用格式

source = '''  source({}) '''.format(r_loc) 
r(source) 

不知道问题2.

+0

这工作。需要小编辑。源文件中的引号。 ('{}')'''.format(r_loc) r(source) –