本文介绍了numpy蒙版,用于计算满足条件的元素的数量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何使用Numpy将其向量化为for循环?
How to use Numpy to vectorize this for loop?
count=0
arr1 = np.random.rand(184,184)
for i in range(arr1.size[0]):
for j in range(arr1.size[1]):
if arr1[i,j] > 0.6:
count += 1
print count
我尝试过:
count=0
arr1 = np.random.rand(184,184)
mask = (arr1>0.6)
indices = np.where(mask)
print indices , len(indices)
我希望len(指数)可以计数,但事实并非如此.请提出任何建议.
I expected len(indices) to give count, but it didn't. Any suggestions please.
推荐答案
获取布尔值掩码并只计算"True"数:
Get a boolean mask and just count the "True"s:
(arr1 > 0.6).sum()
这篇关于numpy蒙版,用于计算满足条件的元素的数量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!