numpy.digitize(array_x, bins, right=False)
函数描述
返回array中每一个值在bins中所属的位置,返回arry中元素个数与原始array_x
一致
按bins分类解释:
如果bins是这样的: [0.0, 1.0, 2.5, 4.0, 10.0]
那么每个区间对应的位置index是: 0, 1 2 3 4 5
小于bins中第一个数的,为 0
大于bins中最大一个数的,为 len(bins)
两个例子:
>>> import numpy as np
# 不超出边界
>>> x = np.array([0.2, 6.4, 3.0, 1.6])
>>> bins = np.array([0.0, 1.0, 2.5, 4.0, 10.0])
>>> np.digitize(x, bins)
array([1, 4, 3, 2], dtype=int64)
# 超出边界
>>> y = np.array([-1, 0.2, 6.4, 3.0, 1.6, 11])
>>> np.digitize(x, bins)
array([0, 1, 4, 3, 2, 5], dtype=int64)