gpt4 book ai didi

python - 如何有条件地更新 np.array ?

转载 作者:行者123 更新时间:2023-11-30 22:22:24 25 4
gpt4 key购买 nike

我有两个 numpy 数组:

Out[23]: a = np.array([3, 7, 8, 9, 2], dtype=float)
Out[24]: b = np.array([5, 6, 7, 10, 3], dtype=float)

我需要比较 a 和 b,并更新数组 b 使其元素包含较高的值或 np.nan

示例代码:

for i in range(len(b)):
b[i] = b[i] if b[i] > a[i] else np.nan

结果:

b
Out[33]: array([ 5., nan, nan, 10., 3.])

有没有办法在不使用 for 循环的情况下做到这一点?

提前致谢。

最佳答案

您可以使用np.where

>>> np.where(b > a, b, np.nan)
array([ 5., nan, nan, 10., 3.])

关于python - 如何有条件地更新 np.array ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48328572/

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