2017-11-07 1 views
-2

これは簡単な解決策が必要だと思うが、まだNumpyになじみがなく、ライブラリフィッティングで何も見つかりませんでした。ニーズ。私はこれがはっきりしているように感じるが、私はこれについてStackOverflowで同様の質問を見つけることができませんでした。空の3D numpy配列を作成し、それに新しい値を付け加える

基本的には、私は3次元のを空にしての配列を作成したいと思います。私はこれを試した:matrix = np.array(None, ndmin=3)。そして今、新しい変数があるたびに、変数の新しい値で選択した行列の次元を追加したいと思います。どうやってやるの?私はnp.append()np.insert()で遊んだが、私は解決策には出られなかった。

+0

で部分行列を抽出することができます。このような配列の成長は遅いです。そして、あなたが見つけたように、それを初期化するのは難しいです。リストの追加が良いです。 – hpaulj

答えて

1

配列は固定サイズを持っています。追加することはできません。あなたは、配列の上限がわかっている場合は、10x10x10行列の場合

np.empty((10, 10, 10)) 

で、配列を事前に割り当てることができます。 3つのインデックスx、y、zを保持して、実際のサイズを追跡することができます。例えば、で新しい要素を追加します。完了したら、

matrix[x,y,z] = newElement 
x += 1 

はその後、あなたはこれをしようとしないでください

finalMatrix = matrix[:x,:y,:z] 
関連する問題