>>> shape=(2,2)
>>> np.random.randn(*shape)
array([[-1.64633649, -0.03132273],
[-0.92331459, 1.05325462]])
numpyのドキュメントでは見つかりませんでした。どんな助けもありがとうございます。numpyの '*'の意味は何ですか?
>>> shape=(2,2)
>>> np.random.randn(*shape)
array([[-1.64633649, -0.03132273],
[-0.92331459, 1.05325462]])
numpyのドキュメントでは見つかりませんでした。どんな助けもありがとうございます。numpyの '*'の意味は何ですか?
これはNumPy固有の構文ではありません。それはPython構文です。いわゆる*
-operatorは、引数リストでシーケンスのアンパックを行うPython構文です(Unpacking Argument Listsを参照)。
例では、shape
タプルを別々の引数に展開して使用しています。これは、numpy.random.randn
が整数のタプルではなく、任意の数の整数をパラメータとして取るために必要です。 (完全を期すため、**
はなく、キーワード/名前付き引数と、同じことを)
>>> np.random.randn(2, 2)
People other places sometimes call it the 'splat'.:
質問からコードが実行に相当します。