题
我有一个numpy 2D阵列self.sub,我想在rpy2 kmeans中使用它。 k = brobjects.r.kmeans(self.sub,2,20),我总是会收到以下错误:valueerror:目前类型什么都没做!我能做些什么?
解决方案
从rpy2 文档, ,r矩阵只是具有昏暗属性集的向量。因此,对于二维数组x
import rpy2.robjects as robj
nr, nc = x.shape
xvec = robj.FloatVector(x.transpose().reshape((x.size))
xr = robj.r.matrix(xvec, nrow=nr, ncol=nc)
您必须转置numpy数组,因为r通过列填充矩阵。
编辑:实际上,您可以在r矩阵函数中设置byrow = true,然后您无需转置即可。
不隶属于 StackOverflow