gpt4 book ai didi

python - 在 numpy 数组中传播最大值

转载 作者:行者123 更新时间:2023-12-04 00:53:03 26 4
gpt4 key购买 nike

我认为这是一个相对简单的问题,因为我知道在 numpy 中有一个简单的答案,但我找不到了。

我有一个 numpy 数组,比如 [1, 2, 10, 5, 6, 12, 9, 9, 8]

我想从头到尾遍历它并只保留到目前为止看到的最大值,例如答案将是 [1, 2, 10, 10, 10, 12, 12, 12, 12]

用一个循环很容易解决,但前段时间我了解到一个 numpy 函数可以快速完成这项工作,而且它也很紧凑。我正在寻找这种方法。

谢谢!

最佳答案

您可以使用 numpy.ufunc.accumulate , 在所有元素上累积应用函数的结果,maximum:

a = np.array([1, 2, 10, 5, 6, 12, 9, 9, 8])

np.maximum.accumulate(a)
# array([ 1, 2, 10, 10, 10, 12, 12, 12, 12], dtype=int32)

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

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