gpt4 book ai didi

python - 在 numpy(子)数组中除以零

转载 作者:行者123 更新时间:2023-11-28 21:21:35 26 4
gpt4 key购买 nike

我有三个数组,它们用数学函数处理以获得最终结果数组。一些数组包含 NaN,一些包含 0。然而,除以零在逻辑上会引发警告,使用 NaN 的计算会给出 NaN。所以我想对涉及零的数组的某些部分执行某些操作:

r=numpy.array([3,3,3])
k=numpy.array([numpy.nan,0,numpy.nan])
n=numpy.array([numpy.nan,0,0])
1.0*n*numpy.exp(r*(1-(n/k)))

例如在 k == 0 的情况下,我想得到结果 0。在所有其他情况下,我会计算上面的函数。那么如何对数组的一部分进行这样的计算(通过索引)得到最终的单一结果数组呢?

最佳答案

import numpy
r=numpy.array([3,3,3])
k=numpy.array([numpy.nan,0,numpy.nan])
n=numpy.array([numpy.nan,0,0])
indxZeros=numpy.where(k==0)
indxNonZeros=numpy.where(k!=0)
d=numpy.empty(k.shape)
d[indxZeros]=0
d[indxNonZeros]=n[indxNonZeros]/k[indxNonZeros]
print d

关于python - 在 numpy(子)数组中除以零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21110267/

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