【发布时间】:2015-11-07 00:35:25
【问题描述】:
我正在尝试找出 rpy2 来绘制一些图表。我希望能够使用作为 R 基础的一部分的 with 函数,就像它在以下 R 代码中使用它一样:
with(res, plot(log2FoldChange, -log10(pvalue), pch=20, main="Volcano plot", xlim=c(-2.5,2)))
with(subset(res, padj<.05 ), points(log2FoldChange, -log10(pvalue), pch=20, col="red"))
其中 res 是一个数据框,而 log2FoldChange 和 pvalue 是该数据框的列。
当我使用 rpy2 的 importr 导入基础包时,我可以通过执行以下操作看到“with”在对象中:
from rpy2.robjects.packages import importr
base = importr('base')
dir(base)
但是,我似乎无法弄清楚正确的语法:
from rpy2.robjects.packages import importr
from rpy2 import robjects
base = importr('base')
base.with(res, robjects.r.plot(log2FoldChange, padj))
File "<stdin>", line 1
base.with(res, robjects.r.plot(log2FoldChange, padj))
^
SyntaxError: invalid syntax
不幸的是,搜索“base.with”之类的内容已被证明是棘手的。我的问题:在 rpy2 python 代码中使用 'base.with' 的语法是什么?
另外,虽然使用 'with' 是执行此操作的最前向 R 方法,但对于我不知道的同一问题,也许有一种对 rpy2 更友好的方法。
【问题讨论】: