NumPy 1.14 - numpy.bincount()

numpy.bincount




numpy

numpy.bincount

numpy.bincount(x, weights=None, minlength=0)

गैर-नकारात्मक ints के सरणी में प्रत्येक मान की घटनाओं की संख्या।

डिब्बे की संख्या (आकार 1) x में सबसे बड़े मूल्य से एक बड़ी है। यदि minlength निर्दिष्ट है, तो आउटपुट ऐरे में कम से कम संख्या में डिब्बे होंगे (हालांकि यह x की सामग्री के आधार पर आवश्यक होने पर अधिक लंबा होगा)। प्रत्येक बिन x में अपने सूचकांक मूल्य की घटनाओं की संख्या देता है। यदि weights निर्दिष्ट किया जाता है, तो इनपुट ऐरे को इसके द्वारा भारित किया जाता है, अर्थात यदि मान n स्थिति में पाया जाता है, out[n] += weight[i] out[n] += 1 बजाय out[n] += weight[i] out[n] += 1

पैरामीटर:

x : array_like, 1 आयाम, nonnegative ints

इनपुट सरणी

वजन : array_like, वैकल्पिक

वजन, x के समान आकार की सरणी।

minlength : इंट, वैकल्पिक

आउटपुट सरणी के लिए न्यूनतम संख्या में डिब्बे।

संस्करण 1.6.0 में नया।

यह दिखाता है:

बाहर : ndarray ints

इनपुट सरणी को कम करने का परिणाम है। out की लंबाई np.amax(x)+1 बराबर है।

जन्म देती है:

ValueError

यदि इनपुट 1-आयामी नहीं है, या इसमें नकारात्मक मान वाले तत्व शामिल हैं, या यदि minlength नकारात्मक है।

त्रुटि प्रकार

यदि इनपुट का प्रकार फ्लोट या जटिल है।

यह भी देखें

histogram , digitize , unique

उदाहरण

>>> np.bincount(np.arange(5))
array([1, 1, 1, 1, 1])
>>> np.bincount(np.array([0, 1, 1, 3, 2, 1, 7]))
array([1, 3, 1, 1, 0, 0, 0, 1])
>>> x = np.array([0, 1, 1, 3, 2, 1, 7, 23])
>>> np.bincount(x).size == np.amax(x)+1
True

इनपुट ऐरे को पूर्णांक dtype का होना चाहिए, अन्यथा एक TypeError उठाया जाता है:

>>> np.bincount(np.arange(5, dtype=float))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: array cannot be safely cast to required type

bincount का एक संभावित उपयोग weights कीवर्ड का उपयोग करके एक सरणी के चर-आकार के टुकड़ों पर रकम का प्रदर्शन करना है।

>>> w = np.array([0.3, 0.5, 0.2, 0.7, 1., -0.6]) # weights
>>> x = np.array([0, 1, 1, 2, 2, 2])
>>> np.bincount(x,  weights=w)
array([ 0.3,  0.7,  1.1])