我有一个名为county_data
的(2,500)numpy数组。我想迭代第一列,检查每个值是否等于数字someNumber
,如果是,请将其行附加到名为temp
的列表中。
到目前为止,这是我的代码:
for entry in county_data:
if entry[0] == someNumber:
temp.append(entry)
print temp
这是我得到的错误:
if entry[0] == code:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
我不太清楚这意味着什么,而a.any()
和a.all()
函数似乎对数组中的每一行都没有做我想做的事情。如何编辑我的代码以检查数组每行中的第一个条目是否与someNumber
匹配?
答案 0 :(得分:3)
不要那样做。相反,一次访问所有行(即 vectorize 您的代码):
temp = county_data[county_data[:, 0] == someNumber]