ошибка объединения numpy » только целочисленные скалярные массивы могут быть преобразованы в скалярный индекс»

#python #numpy

#python #numpy

Вопрос:

У меня есть данные numpy

x = [[1. 2.2 3.4] [3. 4. 5. ]]

и

y = [[2.6660993 3.6791213 3.7325573]]

Просто хочу объединить их, результат должен быть таким.

[[1. 2.2 3.4] [3. 4. 5. ] [2.6660993 3.6791213 3.7325573] ]

Однако np.concatenate(x,y) отображается ошибка.

only integer scalar arrays can be converted to a scalar index

Комментарии:

1. Вторым аргументом concatenate является axis значение, которое должно быть целым числом!

Ответ №1:

Функция concatenate получает кортеж ndarrays:

 import numpy as np
x = np.array( [[1,2,3],[4,5,6]] )
y = np.array([[7,8,9]])
z = np.concatenate((x,y))
print(z)
  

Ответ №2:

Вы хотите

 np.concatenate((x, y[None,:]))
  

Обратите внимание, что объекты для конкатенации передаются как последовательность и что они должны быть идентичны во всех измерениях, кроме оси (которая по умолчанию равна 0).