...とすることで、空の(要素を持たない)任意の次元の配列を作成できる。本記事では、空の配列の作り方、使い方について簡単に考察する。1.16.2本記事では、以下の通りライブラリをインポートしていることを前提とする。npnumpy.emptyについてnumpy.emptyは、中身を初期化せずに配列を作成する関数である。dtype=float)shapeは配列の形状を決める引数であり、intintを格納するタプルintを格納するリストのいずれかをとる。dtypeは配列の数値の型を決める引数であり、intfloatnp.float32np.int8などを指定する(デフォルトはfloat)。要素数が5つの1次元配列を生成するには、shapeを5、または(5)、または[5]とする。配列の中身は変わる場合がある。配列を高速に生成できる利点がある。...とすると、任意の次元の空の配列を生成できる。0])で4次元の空の配列がそれぞれ生成できる。0])としても、同様に空の配列を作成できる。関数名と異なり要素に0や1を含まない配列が生成されて紛らわしいため、empty関数を使うべきだと個人的に思う。空の配列は、「配列を結合したいが、最終的に得られる配列のサイズが分からない場合」、あるいは「計算の規模が小さく、かつプログラムの可読性を重視したい場合」に用いるべきである。配列を逐次的に結合すると、その都度メモリを確保する必要があるため、実行速度が低下する。そのため、最終的な配列のサイズが分かっている場合には、初めに必要なサイズの配列を確保して、逐次的に配列を代入した方が速く実行できる。比較のため、配列を結合する関数stack()と、最初に配列を確保する関数substitute()を作成した。両者とも、長さが1000で要素が全て1の配列を返す。関数substitute()では最初に確保した配列に長さ1の配列を1000回代入している。aIPythonの%timeitマジックコマンドで実行速度を測定する。each)すなわち、最初に配列を確保したsubstitute()の方が約14倍高速に実行できた。00:00広告を非表示にする関連記事2020-01-26Pythonのデコレータで関数に処理を追加するある関数の前後に処理を追加する、デコレータと呼ばれる機能に...2019-10-19Chainerの自動微分で勾配を求める(補足)ChainerのVariableクラスを使った自動微分に関する記事である。DataFrameを作成PandaのTimestampで時刻を扱う注目記事プロフィールid:Helve関西在住、電機メーカ勤務のエンジニアです。当サイトのプライバシーポリシーは、こちらを参照ください。Twitterで新着記事を通知しています。読者になる@Helve64をフォローページ最上部に戻る※Adblockが有効の場合やモバイル版ページでは、シェアボタンをクリックできませんはてなブログをはじめよう!Helveさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。