我有一个 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
关于python - Numpy 数组仅将函数应用于某些元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47162048/