/ / Numpy मैट्रिक्स को R मैट्रिक्स में बदलें और इसे इस तरह रखें - अजगर, r, numpy, rpy2

Num मैट्रिक्स को आर मैट्रिक्स में कनवर्ट करें और इसे इस तरह रखें - पायथन, आर, numpy, rpy2

मैं "एक मैट्रिक्स को R मैट्रिक्स में बदलना चाहता हूं। मुझे पता है कि आपको यह करना है:

from rpy2 import robjects as ro
ro.conversion.py2ri = ro.numpy2ri
ro.numpy2ri.activate()

और फिर एक आर मैट्रिक्स बनाएँ:

mat_r = ro.r.matrix(mat_py)

लेकिन समस्या यह है कि जब भी मैं अजगर में नए मैट्रिक्स का उल्लेख करता हूं तो यह वापस एक मैट्रिक्स के रूप में परिवर्तित हो जाता है। उदाहरण के लिए, मुझे पंक्ति और स्तंभ नाम सेट करने की आवश्यकता है, लेकिन ऐसा करने से परिणाम इस प्रकार हैं:

mat_r.rownames = numpy.array([1,2,3])
AttributeError: "numpy.ndarray" object has no attribute "rownames"

किसी को भी पता है कि मैं एक आर मैट्रिक्स के रूप में अपने चमकदार नए आर मैट्रिक्स को कैसे रख सकता हूं, और स्टॉप फिर से एक ndarray बन रहा है?

उत्तर:

उत्तर № 1 के लिए 1

एक तरीका हो सकता है

ro.numpy2ri.deactivate()

रूपांतरण को स्पष्ट रूप से भी कहा जा सकता है (रूपांतरण जेनरिक मॉड्यूल में हैं, यहां numpy2ri)।