2011-04-21 10 views
8

मैं अजगर में बड़े, स्पैर मैट्रिस (टेक्स्ट से उत्पन्न दस्तावेज़-फीचर मैट्रिस) के साथ काम कर रहा हूं। इनके माध्यम से चबाने के लिए काफी समय लग रहा है, और मुझे लगता है कि स्पैर मैट्रिस कुछ सुधार प्रदान कर सकता है। लेकिन मुझे चिंता है कि एक स्पैर मैट्रिक्स लाइब्रेरी का उपयोग करना अन्य पायथन (और आर, rpy2 के माध्यम से) मॉड्यूल में प्लग करना मुश्किल हो रहा है।पाइथन/आर में स्पैस मैट्रिस का उपयोग करने के लिए पेशेवर और विपक्ष?

क्या लोग इस पुल को पार कर चुके हैं क्या पहले से ही कुछ सलाह दे सकते हैं? प्रदर्शन, स्केलेबिलिटी और संगतता के संदर्भ में, अजगर/आर में स्पैर मैट्रिस का उपयोग करने के पेशेवर और विपक्ष क्या हैं?

उत्तर

1

पायथन में स्पैर मैट्रिस का उपयोग करना अपने आप में एक अच्छा विचार नहीं हो सकता है। क्या आपने sparse matrices in numpy/scipy चेक आउट किया है?

न्यूमपी पाइथन में प्रदर्शन लाभ प्रदान करने के लिए मुख्य रूप से सी कोड का उपयोग करने का अत्यधिक लाभ लाता है।

आर में पाठ प्रसंस्करण करने के मेरे सीमित अनुभव से, प्रदर्शन खोजी डेटा विश्लेषण से परे किसी भी चीज़ के लिए इसे बहुत अधिक उपयोग करने योग्य बनाता है।

भले ही, आपको स्पैर मैट्रिस के लिए वेनिला सूचियों का उपयोग नहीं करना चाहिए, यह (समझदारी से) उनके माध्यम से चबा करने में कुछ समय लगेगा।

+0

मैंने यह दस्तावेज देखा है, लेकिन मुझे प्रभावों को पढ़ने में कठिन समय है। क्या अन्य पुस्तकालय स्पैर मैट्रिक्स कक्षा के साथ संगत हैं? मुझे किस प्रकार की गति/मेमोरी लाभ की उम्मीद है? – Abe

1

स्पैर मैट्रिस का प्रतिनिधित्व करने के कई तरीके हैं (आर स्पैरसेम पैकेज के लिए प्रलेखन स्पैर मैट्रिक्स डेटा स्टोर करने के 20 अलग-अलग तरीकों की रिपोर्ट करता है), इसलिए सभी समाधानों के साथ पूर्ण संगतता शायद प्रश्न से बाहर है। संख्या विकल्पों से यह भी पता चलता है कि सभी बेहतरीन परिस्थितियों में समाधान नहीं है।

या तो उन मैट्रिस पर आपकी भारी संख्या क्रंचिंग दिनचर्या (numpy या R) के अनुसार numpy sparse matrices या R's sparseM (rpy2 के माध्यम से) चुनें।

संबंधित मुद्दे