En una array de +ve enteros, el método numpy.bincount() cuenta la aparición de cada elemento. Cada valor bin es la aparición de su índice. También se puede establecer el tamaño del contenedor en consecuencia.
Sintaxis:
numpy.bincount(arr, weights = None, min_len = 0)
Parámetros:
arr : [array_like, 1D]Input array, having positive numbers weights : [array_like, optional]same shape as that of arr min_len : Minimum number of bins we want in the output array
Devolver :
Output array with no. of occurrence of index value of bin in input - arr. Output array, by default is of the length max element of arr + 1. Here size of the output array would be max(input_arr)+1.
Código 1: Funcionamiento de bincount() en NumPy
# Python Program explaining # working of numpy.bincount() method import numpy as geek # 1D array with +ve integers array1 = [1, 6, 1, 1, 1, 2, 2] bin = geek.bincount(array1) print("Bincount output : \n ", bin) print("size of bin : ", len(bin), "\n") array2 = [1, 5, 5, 5, 4, 5, 5, 2, 2, 2] bin = geek.bincount(array2) print("Bincount output : \n ", bin) print("size of bin : ", len(bin), "\n") # using min_length attribute length = 10 bin1 = geek.bincount(array2, None, length) print("Bincount output : \n ", bin1) print("size of bin : ", len(bin1), "\n")
Producción :
Bincount output : [0 4 2 0 0 0 1] size of bin : 7 Bincount output : [0 1 3 0 1 5] size of bin : 6 Bincount output : [0 1 3 0 1 5 0 0 0 0] size of bin : 10
Código 2: podemos realizar la suma según el elemento con peso bincount()
# Python Program explaining # working of numpy.bincount() method import numpy as geek # 1D array with +ve integers array2 = [10, 11, 4, 6, 2, 1, 9] array1 = [1, 3, 1, 3, 1, 2, 2] # array2 : weight bin = geek.bincount(array1, array2) print("Summation element-wise : \n", bin) #index 0 : 0 #index 1 : 10 + 4 + 2 = 16 #index 2 : 1 + 9 = 10 #index 3 : 11 + 6 = 17
Producción :
Summation element-wise : [ 0. 16. 10. 17.]
Referencias:
https://docs.scipy.org/doc/numpy/reference/generated/numpy.bincount.html#numpy.bincount
.
Este artículo es aportado por Mohit Gupta_OMG 😀 . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA