問題,R怎麼投反對蟒蛇的人演員[R對象到Python中的人與rpy2
我的情況:我需要使用的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'>
Howover,我不能用科爾[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'
任何提示/幫助表示讚賞!
正如錯誤消息所描述的,你不能乘以'FloatVector'和'float'。嘗試明確地將'c'轉換爲'float' - 像這樣 - 'float(c)* 10'並且看看它是否有效。 – 2011-04-13 17:12:51
這不是真的。做:=> float(c)* 10給出:=> c:getsegcount 分段錯誤 – Horacio 2011-04-13 18:23:02