質問:RオブジェクトをPythonオブジェクトにキャストする方法
私の場合:cor.test()の結果をPythonルーチンに使用する必要があります。
correlation = robjects.r('function(x, y) cor.test(x, y)')
corr= correlation(robjects.IntVector(goodtotemp), robjects.IntVector(goodGDPs))
print corr
print corr[3]
print 'coef:',type(corr[3])
期待どおりの出力:
cor
0.984881
coef: <class 'rpy2.robjects.vectors.FloatVector'>
ただし、corr[3]をPythonオブジェクトとして使用することはできません。
c=corr[3]
print 'c:',c*10., type(c)
見て(これが私が何か間違ったことをしていることを私が知る方法です!)、出力:
c:
Traceback (most recent call last):
File "./GDPAnalyzer.py", line 234, in <module>
print 'c:',c*10., type(c)
TypeError: unsupported operand type(s) for *: 'FloatVector' and 'float'
ヒント/ヘルプは大歓迎です!