J'essaie d'obtenir un binount d'une matrice numpue qui est du type flotteur: Comment pouvez-vous utiliser binount () avec des valeurs flottantes et non int? p> p>
3 Réponses :
Vous voulez quelque chose comme ça? ou, plus bien de sortie: P> >>> np.bincount([10,11])
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1])
Vous devez utiliser numpy.unique code> avant d'utiliser bincount code>. Sinon, c'est ambigu ce que vous comptez. unique code> devrait être beaucoup plus rapide que le compteur pour les tableaux numpus. >>> w = np.array([0.1, 0.2, 0.1, 0.3, 0.5])
>>> uniqw, inverse = np.unique(w, return_inverse=True)
>>> uniqw
array([ 0.1, 0.2, 0.3, 0.5])
>>> np.bincount(inverse)
array([2, 1, 1, 1])
Depuis la version 1.9.0, vous pouvez utiliser np.unique code> directement:
Que vous attendriez-vous à la suite de ce type d'opération "étrange"?
Je veux connaître le nombre d'occurrences de chaque valeur. Donc, le résultat serait: [2,1,1,1] à 0,1 se produit deux fois et les autres une fois.