view
に変更せずにデータを numpy ビューに保存するにはどうすればよいcopy
ですか? このコード スニペットは、私の質問の例です。
>>> import numpy as np
>>> #-- init arrays and view
>>> a = np.ones([4])
>>> z = np.zeros([2,4])
>>> z0 = z[0,:] #-- view
>>> z0.flags.owndata
False
>>> #-- This works!
>>> #-- modify view in-place
>>> np.add(a,z0,z0)
>>> z0.flags.owndata
False
>>> z
array([[ 1., 1., 1., 1.],
[ 0., 0., 0., 0.]])
>>> #-- reinit arrays and view
>>> z = np.zeros([2,4])
>>> z0 = z[0,:] #-- view
>>> #-- This does NOT work!
>>> #-- store data into view
>>> z0 = a
>>> z0.flags.owndata
True
+=
-=
*=
/=
パラメータを取るnumpy関数を使用したインプレース変更について知っているので、インプレースの絶対値を取得するout
などのことができます。np.abs(x, x)
x
しかし、データをview
変更せずに に保存する方法は?
関数の乱用add
(ゼロを追加して格納する) は機能しますが、「正しい」とは感じません。
np.add(a,0,z0)