【问题标题】:Rpy2 could not find functionRpy2找不到函数
【发布时间】:2012-01-07 13:14:21
【问题描述】:

我四处寻找错误找不到函数“someFunction”这似乎是一个常见错误,但是我没有找到任何与 Rpy2 相关的错误。我想从我用 python 制作的矩阵制作热图。

def HeatMap(HeatData):
    RHeatMap = robjects.FloatVector([HeatData[i] for i in range(len(HeatData[:,1]))])
    HeatMap = robjects.r['matrix'](RHeatMap, nrow = len(HeatData[:,1]))
    robjects.r('HeatMap = %s' %HeatMap.r_repr())
    robjects.r('jsr.colors=colorRampPalette(c("green","black","red"),interpolate="linear")')
    robjects.r('heatmap(HeatMap, Rowv = NA, Colv = NA, col = topo.colors(100))')

该错误是由最后两行引起的,但是在 R 中,这两个函数都没有问题。

谢谢

【问题讨论】:

    标签: python r heatmap rpy2


    【解决方案1】:

    我在 Python2.7 和 rpy2 2.1.9 下的代码没有任何问题。

    如果你直接调用 R 函数而不是使用字符串会发生什么?

    HeatMap = robjects.r['matrix'](RHeatMap, nrow = len(HeatData[:,1]))
    robjects.r['heatmap'](HeatMap, Rowv = robjects.NA_Integer, Colv = robjects.NA_Integer, col = robjects.r['topo.colors'](100))
    

    【讨论】:

    • 在 RI 中可以同时运行 jsr.colors=colorRampPalette(c("green","black","re​​d"),interpolate="linear") 和 heatmap(HeatMap, Rowv = NA, Colv = NA, col = topo.colors(100))。但我无法通过 Rpy2 运行这些功能。
    猜你喜欢
    • 2015-04-06
    • 2015-07-04
    • 2018-11-13
    • 2021-02-06
    • 2016-09-04
    • 1970-01-01
    • 2012-03-14
    • 2015-06-25
    • 2017-02-18
    相关资源
    最近更新 更多