Очевидно np.append
неправильный инструмент для работы:
In [144]: np.append(np.array([]), np.identity(3))
Out[144]: array([ 1., 0., 0., 0., 1., 0., 0., 0., 1.])
С его документы:
Если axis
не указан, values
может быть любая форма и будет сплющена перед использованием.
С списком добавить
In [153]: alist=[]
In [154]: for y in [1,2]:
...: alist.append(np.identity(3))
...:
In [155]: alist
Out[155]:
[array([[ 1., 0., 0.],
[ 0., 1., 0.],
[ 0., 0., 1.]]), array([[ 1., 0., 0.],
[ 0., 1., 0.],
[ 0., 0., 1.]])]
In [156]: np.array(alist)
Out[156]:
array([[[ 1., 0., 0.],
[ 0., 1., 0.],
[ 0., 0., 1.]],
[[ 1., 0., 0.],
[ 0., 1., 0.],
[ 0., 0., 1.]]])
In [157]: _.shape
Out[157]: (2, 3, 3)
Вы ищете 3D-массив или список/вектор ваших матриц? Кроме того, почему не просто 'matrix_array.append (np.identity (3))' внутри вашего цикла for? – tooty44
Я ищу 3d массив – user