跳转到内容

Python 编程/使用 R 扩展

来自维基教科书,开放的书籍,开放的世界


可以从 Python 中直接调用 R 函数甚至模块。一种简单的方法是使用 rpy2 接口。在以下代码段中,从 bioconductor 门户加载了一个名为 preprocessCore 的 R 模块,并对在 python 中创建的矩阵应用分位数归一化函数,然后将其转换回 python。

import rpy2.robjects as robjects
from rpy2.robjects.packages import importr
import numpy

preprocessCore = importr('preprocessCore')

matrix = [ [1,2,3,4,5], [1,3,5,7,9], [2,4,6,8,10] ]
v = robjects.FloatVector([ element for col in matrix for element in col ])
m = robjects.r['matrix'](v, ncol = len(matrix), byrow=False)
Rnormalized_matrix = preprocessCore.normalize_quantiles(m)
normalized_matrix = numpy.array( Rnormalized_matrix)

因此可以处理 R 模块和对象。

另请参阅

[编辑 | 编辑源代码]
华夏公益教科书