J'utilise le code suivant pour numériser un tableau dans 16 bacs:numpy.digitize renvoie des valeurs hors limites?
numpy.digitize(array, bins=numpy.histogram(array, bins=16)[1])
Je pense que la sortie est dans l'intervalle [1, 16], car il y a 16 bacs. Cependant, l'une des valeurs du tableau retourné est 17. Comment cela peut-il être expliqué?
Hmm, je ne sais à propos de le comportement de la casse de digitize(). Cependant, puisque j'utilise histogram() pour créer les bins, toutes les valeurs ne sont-elles pas censées se trouver dans les bins? – sandesh247
Comme je l'ai expliqué dans ma réponse, 'array.min()' est supposé se trouver dans le premier casier parce qu'il satisfait la condition 'bins [0] <= array.min()
Merci pour votre patience. Le comportement de l'argument 'bins' pour' numpy.histogram' est différent (le dernier intervalle est un intervalle fermé), ce qui a conduit à la confusion. – sandesh247