【问题标题】:Accessing functions with a dot in their name (eg. "as.vector") using rpy2使用 rpy2 访问名称中带有点的函数(例如“as.vector”)
【发布时间】:2011-08-27 06:51:54
【问题描述】:

我正在尝试使用 rpy2 从 Python 中访问“as.vector”R 函数。假设,为了简单起见,我想使用 rpy2(R 代码)做这样简单的事情:

x <- as.vector(c(1, 2, 3))

由于“as.vector”在其名称中包含一个点,因此它不能直接作为 rpy2.robjects.r 的成员使用

根据文档,rpy2 用下划线替换命名函数参数的点,但它似乎不适用于函数名称本身。我试过了。 "as_vector", "asvector" 无济于事。

有什么想法吗?

【问题讨论】:

    标签: r rpy2


    【解决方案1】:

    根据文档,rpy2 在使用 'rpy2.robjects.r' 时不会用下划线替换点。

    您可能需要考虑使用“importr()”

    【讨论】:

      【解决方案2】:

      使用 rpy2.robjects.r 接口获取对函数的引用。

      所以,你可以这样做:

      as_vector = robjects.r("as.vector")
      vect = as_vector(r_vect)
      

      【讨论】:

        猜你喜欢
        • 2019-11-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-17
        • 1970-01-01
        • 2020-09-20
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多