Julia 中 numpy.digitize() 函数的替代项是什么?

What is the alternate of numpy.digitize() function in Julia?

我想知道如何在 julia 中复制 numpy.digitize() 功能? 我正在尝试将此 python 示例转换为 Julia。

Python 例子

x = np.array([0.2, 6.4, 3.0, 1.6])
bins = np.array([0.0, 1.0, 2.5, 4.0, 10.0])
inds = np.digitize(x, bins)

Output: array([1, 4, 3, 2], dtype=int64)

我尝试在 Julia 中使用 searchsorted 函数,但它不会复制输出形式 python。 请提出解决此问题的建议。

提前致谢!!

您可以使用 searchsortedlast 进行广播:

julia> x = [0.2, 6.4, 3.0, 1.6]
4-element Array{Float64,1}:
 0.2
 6.4
 3.0
 1.6

julia> bins = [0.0, 1.0, 2.5, 4.0, 10.0]
5-element Array{Float64,1}:
  0.0
  1.0
  2.5
  4.0
 10.0

julia> searchsortedlast.(Ref(bins), x)
4-element Array{Int64,1}:
 1
 4
 3
 2