【发布时间】:2020-03-09 19:03:19
【问题描述】:
我想在稀疏矩阵的一行和另一个列表之间执行元素明智的逻辑运算。
from scipy.sparse import lil_matrix
a=lil_matrix((3,3), dtype=bool)
b=[True,False,True]
a[2,:]=a[2,:] or b
但是,这会返回:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all().
对于错误发生的原因已经有一个很好的解释here
但是,a.any() 或 a.all() 将仅返回一个真值,并且不会执行某些元素明智的操作。此外,np.logical_or(a[2,:],b) 返回相同的错误。
【问题讨论】:
标签: python list numpy boolean or-operator