#python #arrays #numpy #nested-lists #numpy-slicing
#python #массивы #numpy #вложенные списки #numpy-нарезка
Вопрос:
У меня есть два массива numpy a
и b
с тем же первым измерением, например a.shape -> (3, 100)
, и b.shape -> (3, 20, 20)
.
Мне нужно, чтобы они были преобразованы (как можно более эффективно) в массив (или вложенный список или dict?) ab
это имеет то же первое измерение (здесь 3
). Поэтому, когда я вызываю ab[1]
, он должен возвращать что-то вроде [a[1], b[1]]
(или по-другому ab[:][0] == a
и ab[:][1] == b
).
Я чувствую, что это простая проблема, но я не знаю, что искать, и я уже слишком долго сижу над этим.
Ответ №1:
Не существует способа создать объединенный массив NumPy с массивами разной формы. Что вы могли бы сделать, это использовать список и поместить их в одни и те же строки.
ab = [[a[i],b[i]] for i in range(3)]
(ab[0][0] == a[0]).all()
>>>True