Skip to main content
 首页 » 编程设计

python之Numpy 数组仅将函数应用于某些元素

2025年05月04日22pengyingh

我有一个 numpy 数组,比如说它的形状是 (10,10)。 现在我想将 np.exp() 应用于此数组,但仅应用于满足条件的某些特定元素。例如,我想将 np.exp 应用于所有非 0 或 1 的元素。有没有一种方法可以在不使用 for 循环迭代数组的每个元素的情况下做到这一点?

请您参考如下方法:

这可以通过基本的 numpy 操作来实现。这是一种方法:

A = np.random.randint(0,5,size=(10,10)).astype(float)  # data 
goods = (A!=0) & (A!=1)  # 10 x 10 boolean array 
A[goods] = np.exp(A[goods])  # boolean indexing