Я пытаюсь умножить два массива, но я не могу это сделать, я получаю это исключение:
"Ошибка типа: объектные массивы в настоящее время не поддерживаются"
и, очевидно, когда я создаю один из двух массивов, я получаю массив dtype = object, а не dtype = float, как должно быть.
это массивы, которые я хочу умножить следующим образом:
A = np.array([[.9, .07, .01],
[0, .93, .05, .02],
[0, .0, .85, .15],
[0, 0, 0, 1.00]])
X = np.array([[85, 10, 5, 0]])
print(A.T @ X.T) # this generates the exception mentioned above
когда я печатаю массив "A", я получаю это:
array([list([0.9, 0.07, 0.01]), list([0, 0.93, 0.05, 0.02]),
list([0, 0.0, 0.85, 0.15]), list([0, 0, 0, 1.0])], dtype=object)
и я думаю, что причина ошибки
Я не понимаю, почему в массиве есть список, и похоже, что это тип объекта (dtype = object), мне нужен массив с плавающей точкой (4,3), но я получаю и (4,) форму.
Как я мог решить это? Как я могу создать массив с плавающей точкой, который можно умножить
я использую numpy == 1.15.4 и python 3.6
спасибо