Результат операции Numpy печатается как список, а не как массив numpy

#python #numpy

#python #numpy

Вопрос:

Я хочу объединить два массива по вертикали в Python, используя пакет NumPy, но мне нужен другой вывод.

у меня есть два списка

 a=[1,2,3]
b=[7,8,9]
  

Я написал это, чтобы решить проблему

 a1 = np.array(a)
a2 = np.array(b)
np.vstack((a1,a2))
  

Мой вывод

 [[1 2 3]
 [7 8 9]]
  

но мне нужен вывод, подобный этому

 array([[1, 2, 3],
[7, 8, 9]])
  

Чего мне не хватает? Спасибо

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

1. Это одно и то же… вероятно, вы просто оборачиваете его в print()

Ответ №1:

Ваш результат правильно равен np.ndarray . Чтобы увидеть это, вам нужен его repr , а не распечатка:

 In [4]: np.vstack((a1,a2))

Out[4]:
array([[1, 2, 3],
       [7, 8, 9]])

In [5]: print _4
[[1 2 3]
 [7 8 9]]

In [6]: _4
Out[6]:
array([[1, 2, 3],
       [7, 8, 9]])

In [8]: print repr(_4)
array([[1, 2, 3],
       [7, 8, 9]])