R 包 Rssa 未使用 rpy2 importr 导入到 python
R packages Rssa is not imported to python with rpy2 importr
当我在 Python 命令中执行时
rssa = importr('Rssa')
我得到了 eroor
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
rssa = importr('Rssa')
File "C:\Python34\lib\site-packages\rpy2\robjects\packages.py", line 412, in importr
version = version)
File "C:\Python34\lib\site-packages\rpy2\robjects\packages.py", line 178, in __init__
self.__fill_rpy2r__(on_conflict = on_conflict)
File "C:\Python34\lib\site-packages\rpy2\robjects\packages.py", line 280, in __fill_rpy2r__
super(SignatureTranslatedPackage, self).__fill_rpy2r__(on_conflict = on_conflict)
File "C:\Python34\lib\site-packages\rpy2\robjects\packages.py", line 233, in __fill_rpy2r__
rpyobj = conversion.ri2ro(riobj)
File "C:\Python34\lib\functools.py", line 707, in wrapper
return dispatch(args[0].__class__)(*args, **kw)
File "C:\Python34\lib\site-packages\rpy2\robjects\__init__.py", line 101, in _
return SignatureTranslatedFunction(obj)
File "C:\Python34\lib\site-packages\rpy2\robjects\functions.py", line 150, in __init__
raise ValueError("Error: '%s' already in the translation table. This means that the signature of the R function contains the parameters '%s' and/or '%s' <sigh> in multiple copies." %(r_param, r_param, prm_translate[py_param]))
ValueError: Error: '...' already in the translation table. This means that the signature of the R function contains the parameters '...' and/or '...' <sigh> in multiple copies.
其他包导入没有问题,例如
stats = importr('stats')
tseries = importr('tseries')
forecast = importr('forecast')
我一直在寻找这样的问题,但我找不到任何接近的东西。请就此问题提出一些决定。
这是由 Rssa 试图控制 'decompose' 函数(从 'stats' 包导出)时的错误引起的。特别是,在正式列表中,“...”被添加了两次,这就是 rpy2 所抱怨的。
这将在后续的 Rssa 版本中得到修复。
唯一的解决方法是在 R/common.R 中注释掉以下行:
formals(decompose.default) <- c(formals(decompose.default), alist(... = ))
并从源代码重新安装 Rssa。这在 Windows 上可能很重要,尽管 R windows builder 可以在这里提供帮助。
当我在 Python 命令中执行时
rssa = importr('Rssa')
我得到了 eroor
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
rssa = importr('Rssa')
File "C:\Python34\lib\site-packages\rpy2\robjects\packages.py", line 412, in importr
version = version)
File "C:\Python34\lib\site-packages\rpy2\robjects\packages.py", line 178, in __init__
self.__fill_rpy2r__(on_conflict = on_conflict)
File "C:\Python34\lib\site-packages\rpy2\robjects\packages.py", line 280, in __fill_rpy2r__
super(SignatureTranslatedPackage, self).__fill_rpy2r__(on_conflict = on_conflict)
File "C:\Python34\lib\site-packages\rpy2\robjects\packages.py", line 233, in __fill_rpy2r__
rpyobj = conversion.ri2ro(riobj)
File "C:\Python34\lib\functools.py", line 707, in wrapper
return dispatch(args[0].__class__)(*args, **kw)
File "C:\Python34\lib\site-packages\rpy2\robjects\__init__.py", line 101, in _
return SignatureTranslatedFunction(obj)
File "C:\Python34\lib\site-packages\rpy2\robjects\functions.py", line 150, in __init__
raise ValueError("Error: '%s' already in the translation table. This means that the signature of the R function contains the parameters '%s' and/or '%s' <sigh> in multiple copies." %(r_param, r_param, prm_translate[py_param]))
ValueError: Error: '...' already in the translation table. This means that the signature of the R function contains the parameters '...' and/or '...' <sigh> in multiple copies.
其他包导入没有问题,例如
stats = importr('stats')
tseries = importr('tseries')
forecast = importr('forecast')
我一直在寻找这样的问题,但我找不到任何接近的东西。请就此问题提出一些决定。
这是由 Rssa 试图控制 'decompose' 函数(从 'stats' 包导出)时的错误引起的。特别是,在正式列表中,“...”被添加了两次,这就是 rpy2 所抱怨的。
这将在后续的 Rssa 版本中得到修复。
唯一的解决方法是在 R/common.R 中注释掉以下行:
formals(decompose.default) <- c(formals(decompose.default), alist(... = ))
并从源代码重新安装 Rssa。这在 Windows 上可能很重要,尽管 R windows builder 可以在这里提供帮助。