在R shell中运行Python代码

时间:2017-01-03 09:39:26

标签: python r shell

我有一个Python代码,我想在我的R代码中使用它。为此,我使用以下说明:

system(cat("py -2.7 -i C:/Users/Dropbox/Mong/PythonCode.py",
"s = shelve.open('C:/Users/Dropbox/Mong/AG1')",
"model = s['AG1']",
"M = model.Matrix",
"m = len(M)",
"string  = ''",
"string += ';'.join([','.join([str(x) for x in M[i]]) for i in range(m)])",
"string += ';'",
"f = open('C:/Users/Dropbox/Mong/AG1.txt','w')",
"f.write(string)",
"f.close()",
"quit()", sep='\n'))

然而,我收到此错误:

Error in system(command, as.integer(flag), f, stdout, stderr) : 
  character string expected as first argument

你有什么建议吗?

编辑:使用paste代替cat,我收到以下错误:

C:\Python27\python.exe: can't open file 'C:/Users/sedaghat/Dropbox/Mong/PythonCode.py
s': [Errno 22] Invalid argument
Warning message:
running command 'py -2.7 -i C:/Users/Dropbox/Mong/PythonCode.py
s = shelve.open('C:/Users/Dropbox/Mong/AG1')
model = s['AG1']
M = model.Matrix
m = len(M)
string  = ''
string += ';'.join([','.join([str(x) for x in M[i]]) for i in range(m)])
string += ';'
f = open('C:/Users/Dropbox/Mong/AG1.txt','w')
f.write(string)
f.close()
quit()' had status 2 

0 个答案:

没有答案