如何替换数组中的最小值?

2024-05-29 01:42:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我对Python很陌生,对术语或语法不太熟悉。你知道吗

我试图将数组中的所有最小值赋值给1(如果它是最小值),如果不是,则赋值给0。你知道吗

我尝试过:

numpy.minimum(Drug, Size, Strength, Intake Form, variable, /, out=None, *, where= if True=1 else=0)

值变量是price,我省略了min函数的变量firm。每个数组的特征是drugsizestrengthintake form和变量,如果是最低的,我想用1替换每个公司的价格,如果不是最低的,用0替换。你知道吗

我该怎么写这个代码呢?你知道吗


Tags: formnumpynonesize语法数组outvariable
1条回答
网友
1楼 · 发布于 2024-05-29 01:42:49

以下是几种可能的方法之一。你知道吗

import numpy as np


def min_mask(arr):
    m = np.min(arr)
    return np.vectorize(lambda x: x == m)(arr).astype(int)


if __name__ == '__main__':
    my_arr = np.array([-1, -2, -6, -4, -5, -1, -1, -6, -1])
    print(min_mask(my_arr))

输出:

[0 0 1 0 0 0 0 1 0]

相关问题 更多 >

    热门问题