0
行列を行列に格納しようとしていますが、行列を追加するとすべての要素が得られ、出力は1次元の配列になります。Numpyは行列の配列を作成します
コード例:
matrix_array= np.array([])
for y in y_label:
matrix_array= np.append(matrix_array, np.identity(3))
行列を行列に格納しようとしていますが、行列を追加するとすべての要素が得られ、出力は1次元の配列になります。Numpyは行列の配列を作成します
コード例:
matrix_array= np.array([])
for y in y_label:
matrix_array= np.append(matrix_array, np.identity(3))
明らかに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配列またはあなたの行列のリスト/ベクトルをお探しですか?また、なぜあなたのforループの中に 'matrix_array.append(np.identity(3))'がありますか? – tooty44
私は3D配列を探しています – user