У меня проблемы с чем-то, что я, хотя, было бы довольно просто. Я пытаюсь заполнить матрицу нулей данными из цикла for, но получаю сообщение об ошибке: «ValueError: не удалось передать входной массив из shape (10,1) в shape (10)»
Мой код указан ниже:
import numpy as np
import random
def hire(n = 10, nRuns = 2):
data = np.array(np.zeros((n,nRuns)))
i = 0
while i < nRuns:
cand = [[w] for w in range(1,n+1)]
random.shuffle(cand)
look = np.zeros((n,1))
track = np.zeros((n,1))
for M in range(0,n-1):
look[M] = cand[M]
lookbest = max(look)
left = cand[M:]
for q in range(0, n-M-1):
if left[q] > lookbest:
track[M] = left[i]
break
else:
pass
data[:,i] = track #the error occurs right here
i = i + 1
Почему data [n, nRuns] .shape = (10,) вместо (10,1)? И как я могу сделать эту работу?