Объединить n количество массивов numpy по столбцам в python

#python #arrays #numpy #arraylist

Вопрос:

Я знаю, что мы объединяем два 2-D массива numpy с именем arr1 и arr2 одинаковым количеством строк с помощью следующей команды:

 np.concatenate((arr1,arr2),axis=1)
 

Но у меня есть n массивов numpy (я не назначал этим массивам имена глобальных переменных) в списке ,скажем, list_array который представляет собой список, содержащий n элементов, где каждый элемент является 2-D массивом. Нам нужна цикличность, или любая эффективная программа будет в порядке.

Вопрос

Как я могу объединить эти элементы списка, которые представляют собой 2-D массивы по столбцам?

Спасибо

Я не из среды CS. Любая помощь будет оценена по достоинству

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

1. В чем дело np.concatenate(list_array, axis=1) ?

2. Итак, этот np.concatenate принимает список в качестве аргумента?

3. Он принимает последовательность массивов, как , например, в вашем собственном примере: (arr1, arr2) 😉

4. Огромное спасибо.. Я этого не понимал.. вы снова Крис … спасибо, мистер Крис. Вы можете написать это в качестве ответа. Это сработало.

Ответ №1:

Просто заметка вскользь,

Объединение с np.concatenate on axis=1 эквивалентно горизонтальному стеку: np.hstack :

 >>> np.hstack(list_array)
 

против

 >>> np.concatenate(list_array, axis=1)
 

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

1. Большое вам спасибо, сэр.

2. посмотрите на код для hstack . Его использование здесь ничего не улучшает.