any()我想同时将该函数应用于矩阵的所有行。
如果我使用any()向量,当然它会在任何元素返回时返回True(或者在我的情况下) :1True
import numpy as np
print any(np.array([0,0,0,1]))*1
现在假设我有一个矩阵。如果我想获得一个向量,1并且0取决于矩阵的每个元素True单独使用时是否会返回,我可以使用循环来完成for:
matrix=np.array([[0,0,0],[0,0,1],[0,1,0]])
result=np.zeros(len(matrix)).astype('int')
i=0
for line in matrix:
result[i]=any(matrix[i])
i+=1
print result
不过这个方法看起来不太实用,因为矩阵的元素会随着循环一次处理一次for。有没有更好的方法扩展any到矩阵输入,使其返回一个向量,1如上0所示?
请注意,我不想使用matrix.any(),因为它只会返回一个True或False语句,而我希望它应用于矩阵的每个单独元素。
富国沪深
尚方宝剑之说
相关分类