【问题标题】:Formatting two arrays with a correlation Numpy Python使用相关 Numpy Python 格式化两个数组
【发布时间】:2021-05-17 20:27:00
【问题描述】:

我正在尝试编写一个 numpy 函数,其中 Numbersvalue 相互关联,并且 如果Numbers 数组的元素小于value 元素,则返回数字 0,否则返回数字为 1。如果数字相等,则返回 2。所以第一个元素Numbersvalue 是 3 和 2,因为 Numbers 的值大于 values 的数字,它将返回 1。如果可能,我想避免 for 循环和列表推导。

import numpy as np

Numbers = np.array([3,8,10,14,28,42])
value =   np.array([2,4,12,13,30,42])

预期输出:

Result = np.array([1,1,0,1,0,2])

【问题讨论】:

    标签: python arrays function numpy format


    【解决方案1】:

    使用numpy.select:

    >>> np.select(condlist=[Numbers>value, Numbers<value, Numbers==value],
                  choicelist=[1, 0, 2])
    
    array([1, 1, 0, 1, 0, 2])
    

    【讨论】:

      猜你喜欢
      • 2021-12-22
      • 2021-05-19
      • 2021-12-02
      • 2021-06-02
      • 2021-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-08
      相关资源
      最近更新 更多