アルバイト募集2017-06-10NumPyのndarrayのインスタンス変数shapeの意味Tweetndarray.shape(R,)や(R,1)という表記についてNumPyで計算をするためのクラスndarrayは、多次元配列や行列を扱うためのデータ構造です。内部実装では、データ型によってサイズの異なる連続した1次元のメモリ領域が確保されます。ndarrayのインスタンス変数shapeは、1次元のメモリ領域のどこに指定した多次元配列の要素があるのかを知る手がかりになります。この記事では、shapeの使い方と読み方を解説します。ndarray.shapendarrayのshapeは、各次元ごとの要素数を示します。使い方は、Pythonインスタンスと同様arr.shapeとしてプロパティにアクセスするだけです。配列の情報を取得してみます。(4,)reshape関数で変換すると、shapeは指定した引数に合わせて変更されます。ndarray内部の実装では配列の要素はshapeしか変更されません。形状の情報だけ変化されているので高速に実行することができます。reshape関数について詳しくは以下の記事を参考にしてください。/features/numpy-reshape.html変更後のshapeは、要素数が同じであればreshapeで指定した引数と同じものに変換されているはずです。2)また、shapeプロパティに代入すると、reshape関数と同じように配列を変形することができます。要素数を誤るとエラーが返る。(13,)しかし、特に理由がない限りは明示的にreshape関数を使用するほうが無難かと思います。(R,)や(R,1)という表記について(R,)という表記は見慣れないかもしれません。Pythonでは要素数が1つのタプルはこのような表記になります。ただの1次元配列のshapeは(R,)のような使い方をする必要があります。縦ベクトルのようにすると(R,1)の形になる。1)TweetNumPy前の記事NumPyの軸(axis)と次元数(ndim)とは何を意味するのか次の記事NumPyにおける要素のデータ型dtypeの種類と指定方法DeepAgeではAIに関する厳選した内容を記事にしてお届けします。