gpt4 book ai didi

python - 修改 numpy 数组中的值

转载 作者:太空宇宙 更新时间:2023-11-04 08:07:26 24 4
gpt4 key购买 nike

假设 ab 如下:-

a = np.arange(5)
b = [0,1,2]

我想要的是对于不包括 b 中的索引的索引,a 中的值应该等于 -1。所以在上面的例子中a 将等于

a = array([0, 1, 2, -1, -1])

我知道有一种方法,即

a[list(set(a)-set(b))] = -1

但是太费时间了,而且实际写代码的时候也太复杂了。一如既往,我正在寻找比上述方法更好的方法。随意使用所需的任何工具。另一个例子(以防万一):-如果

a = np.arange(12)
b = [3,5,6]

那我真正想要的是a = array([-1, -1, -1, 3, -1, 5, 6, -1, -1, -1, -1, -1])附言不用担心 a 将始终采用 np.arange(int) 的形式并且 b 的值不会超过 的长度一个

最佳答案

好吧,如果对象是创建一个与其索引或 -1 相同的值范围,那么从所有 -1 开始并添加您想要的数据可能比相反的方式更简单。

>>> a = np.full(12, -1, dtype=int)
>>> b = [3, 5, 6]
>>> a[b] = b
>>> a
array([-1, -1, -1, 3, -1, 5, 6, -1, -1, -1, -1, -1])

关于python - 修改 numpy 数组中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28770938/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com