【问题标题】:What is the alternate of numpy.digitize() function in Julia?Julia 中 numpy.digitize() 函数的替代方法是什么?
【发布时间】:2021-02-17 12:00:45
【问题描述】:

我想知道,如何在 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 的输出形式。 请提出解决此问题的方法。

提前致谢!!

【问题讨论】:

    标签: julia bins


    【解决方案1】:

    您可以将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
    

    【讨论】:

    • 感谢您的建议,我是直接放置垃圾箱而不是通过阵列广播(初学者错误:P)非常感谢您的回复!
    猜你喜欢
    • 1970-01-01
    • 2017-03-09
    • 1970-01-01
    • 1970-01-01
    • 2022-11-13
    • 1970-01-01
    • 2019-05-22
    • 2015-01-04
    • 1970-01-01
    相关资源
    最近更新 更多