2011-09-07 20 views
30

मेरे पास दूरी a = np.array([20.5 ,5.3 ,60.7 ,3.0 ], 'double') है और मुझे क्रमबद्ध सरणी के सूचकांक की आवश्यकता है (उदाहरण के लिए [3, 1, 0, 2], a.sort() के लिए)। वहाँ Numpy में एक समारोह है कि क्या करना है?एक क्रमबद्ध Numpy सरणी के मूल सूचकांक प्राप्त करें

उत्तर

43

हाँ, वहाँ x = numpy.argsort(a) समारोह या x = numpy.ndarray.argsort(a) विधि है। यह आप के लिए वास्तव में क्या कह रहे हैं नहीं करता है। तुम भी तो एक तरह ndarray वस्तु पर एक विधि के रूप argsort कॉल कर सकते हैं: a.argsort()http://docs.scipy.org/doc/numpy/reference/generated/numpy.argsort.html#numpy.argsort

1

यहाँ एक उदाहरण है, संदर्भ और सुविधा के लिए:

# create an array 
a = np.array([5,2,3]) 

# np.sort - returns the array, sorted 
np.sort(a) 
>>> array([2, 3, 5]) 

# argsort - returns the original indexes of the sorted array 
np.argsort(a) 
>>> array([1, 2, 0]) 

यहाँ प्रलेखन का लिंक है

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