मैं कुछ थ्रेसहोल्ड से अधिक संख्याओं की 1 डी सरणी के सभी मानों के सूचकांक निकालने का प्रयास कर रहा हूं। सरणी 1e9
लंबी के क्रम में है।न्यूमपी की गति को बढ़ाएं जहां
मेरे दृष्टिकोण NumPy
में निम्नलिखित है:
idxs = where(data>threshold)
यह 20 मिनट है, जो अस्वीकार्य है के ऊपर कुछ समय लगता है। मैं इस कार्य को कैसे गति दे सकता हूं? या, वहाँ तेजी से विकल्प हैं?
(विशिष्ट होना करने के लिए, यह एक मैक ओएस एक्स पर लंबे समय से चल रहा है कि 10.6.7, 1.86 GHz इंटेल, 4GB RAM कुछ भी नहीं और कुछ कर लेता है।)
एनपी को चलाने के लिए 20 मिनट लगते हैं या थ्रेसहोल्ड के नीचे मान हटा दिए जाते हैं? –
एनपी चलाने के लिए 20 मिनट लगते हैं। – mac389
क्या इससे कोई फर्क पड़ता है कि मैं प्रत्येक चर को एक शब्दकोश से कॉल कर रहा हूं? अर्थात। 'डेटा' वास्तव में' डेटा ['टाइम्सरीज़'] है और थ्रेसहोल्ड वास्तव में डेटा है [थ्रेसहोल्ड] [स्पाइक्स] '। मुझे यकीन है कि दूसरा चर एक स्केलर है। – mac389