2

numpyの2D配列self.subがあり、rpy2kmeansで使用したいと思います。k = robjects.r.kmeans(self、2,20)私は常に次のエラーを受け取ります:valueError:現時点ではそのタイプに対して何もできません!私に何ができる?

4

1 に答える 1

5

rpy2のドキュメントから、R行列はdim属性が設定された単なるベクトルです。したがって、ずんぐりした2次元配列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)

Rは行列を列で埋めるため、numpy配列を転置する必要があります。

編集:実際には、R行列関数でbyrow = Trueを設定するだけで、転置する必要はありません。

于 2012-04-05T23:13:36.567 に答える