यह आलेख NumPy सरणी के भीतर अद्वितीय मानों की आवृत्ति गणना की गणना के लिए एक कुशल विधि की खोज करता है।
return_counts=True (NumPy संस्करण 1.9 और उससे ऊपर के लिए) के साथ numpy.unique का उपयोग करने से अद्वितीय मानों और उनकी संबंधित गणनाओं दोनों की कुशल गणना की अनुमति मिलती है। उदाहरण के लिए:
import numpy as np
x = np.array([1,1,1,2,2,2,5,25,1,1])
unique, counts = np.unique(x, return_counts=True)
print(np.asarray((unique, counts)).T)
यह दृष्टिकोण निष्पादन गति के मामले में scipy.stats.itemfreq फ़ंक्शन से बेहतर प्रदर्शन करता है, जैसा कि प्रदर्शन बेंचमार्क में दिखाया गया है:
In [4]: x = np.random.random_integers(0,100,1e6)
In [5]: %timeit unique, counts = np.unique(x, return_counts=True)
10 loops, best of 3: 31.5 ms per loop
In [6]: %timeit scipy.stats.itemfreq(x)
10 loops, best of 3: 170 ms per loop
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3