我希望在 python
上运行一些 R
代码
我已经使用 apt-get install r-cran-robustbase
和 rpy packege 在 ubunto 上安装了 R 包 robustbase
。
从 python 控制台我可以成功运行 from rpy import *
和 r.library("robustbase")
但是当我运行时
result = robjects.FloatVector([11232.1, 234.2, 3445532344.3, 34302.3, 203.9, 232223.3, 3434.55])
print(result.r_repr())
r(adjboxStats(c(11232.1, 234.2, 3445532344.3, 34302.3, 203.9, 232223.3, 3434.55), coef = 2.5, a = -4, b = 3, do_conf = TRUE, do_out = TRUE))
获取异常值
但我收到此错误:
adjboxStats(c(11232.1, 234.2, 3445532344.3, 34302.3, 203.9, 232223.3, 3434.55), coef = 2.5, a = -4, b = 3, do.conf = TRUE, do.out = TRUE)
SyntaxError: keyword can't be an expression
当我在 R 控制台上运行它时,它可以工作!!!
library("robustbase")
adjboxStats(c(11232.1, 234.2, 3445532344.3, 34302.3, 203.9, 232223.3, 3434.55), coef = 2.5, a = -4, b = 3, do.conf = TRUE, do.out = TRUE)
我搜索here , here和 here但没有运气。 有谁知道该错误消息是什么意思并且有办法解决它吗?
谢谢!
最佳答案
您不能使用 do.conf
或 do.out
作为 Python 函数的参数(即使该函数将转换为 R)。
相反,将它们称为 do_conf
和 do_out
。然后,您被另一个错误绊倒,这就是您引用 r("adjboxStats")
的方式:
r("adjboxStats")(result, coef = 2.5, a = -4, b = 3, do_conf = True, do_out = True)
这将解决语法问题。
关于python - 在 `python` 上运行 R 代码,语法错误 : keyword can't be an expression error Message,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16551373/