2014-12-03 121 views
2

如何使用rpy2將numpy數組轉換爲R矩陣?這可能是微不足道的,但我在文檔中找不到一個好答案。我可以通過首先轉換爲熊貓數據框作爲額外步驟來實現這一目標,但這似乎是多餘的。如何將numpy數組轉換爲R矩陣?

工作例如:

import numpy as np 
from pandas import * 
import pandas.rpy.common as com 
import rpy2.robjects as ro 

B=np.array([[1,2,3],[4,5,6],[7,8,9]]) 

Rmatrix = com.convert_to_r_matrix(B) # Does not work 

#Extra conversion via pandas dataframe 
PandasDF = DataFrame(B) 
Rmatrix = com.convert_to_r_matrix(PandasDF) 
ro.r.assign("Bmatrix", Rmatrix) 
print(ro.r["Bmatrix"]) 
+1

確實[此帖](http://stackoverflow.com/a/10037302/489704)有幫助嗎? – jbaums 2014-12-04 00:48:40

+0

是的,這有效,但我也發現這是更重要的一點:[轉換Python對象rpy2]​​(http://stackoverflow.com/questions/2447454/converting-python-objects-for-rpy2)@ jbaums – fileunderwater 2014-12-04 20:02:45

+0

對於這樣的情況,我應該刪除還是標記爲重複? – fileunderwater 2014-12-04 20:03:30

回答