У меня есть код Python, который выглядит так:
...
bestProb=-1;
bestIndex=-1;
prob=np.zeros(numClasses) #numClasses=2
for i in range(0,numClasses):
prob[i]=findProb(x,weights,b,i)
for i in range(0,numClasses):
if prob[i]>bestProb:
bestProb=prob
bestIndex=i
...
Количество классов - 2. Когда я запускаю этот код, я получаю ошибку:
File "regression.py", line 19, in predict
if prob[i]>bestProb:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Я понимаю, что эта ошибка произошла бы, если бы я сравнил весь мой массив с одним числом, но я не использую только одно число, когда пишу prob[i]
? Если я не прав, подскажите пожалуйста, как мне это исправить Спасибо!
Также обратите внимание, что findProb () дает число, а не последовательность. Так что это тоже не проблема.
РЕДАКТИРОВАТЬ : проблема была в bestProb=prob
. Это должно было быть bestProb=prob[i]
. Извините за беспокойство. Спасибо!