web-dev-qa-db-ja.com

NumPyの列に割り当てますか?

NumPyを使用して、次のMATLABコードをどのように記述できますか?

A = zeros(5, 100);
x = ones(5,1);
A(:,1) = x;

行への割り当ては簡単に機能するようですが、配列を別の配列の列に割り当てる例を見つけることができませんでした。

32
Benno

a[:,1] = x[:,0]を使用します。 xの列を単一のnumpy配列として選択するには、x[:,0]が必要です。 xのフォーマット方法を選択できる場合は、最初は2次元配列ではなく、通常の(行)配列にすることをお勧めします。

>>> a
array([[ 0.,  0.,  0.],
       [ 0.,  0.,  0.],
       [ 0.,  0.,  0.],
       [ 0.,  0.,  0.],
       [ 0.,  0.,  0.]])
>>> x = numpy.ones(5)
>>> x
array([ 1.,  1.,  1.,  1.,  1.])
>>> a[:,1] = x
>>> a
array([[ 0.,  1.,  0.],
       [ 0.,  1.,  0.],
       [ 0.,  1.,  0.],
       [ 0.,  1.,  0.],
       [ 0.,  1.,  0.]])
52
BrenBarn
>>> A = np.zeros((5,100))
>>> x = np.ones((5,1))
>>> A[:,:1] = x
7
fraxel