サブクラス化されたnumpy配列があります-単位などのメタデータを含む「分光軸」。
を使用して任意のインスタンスのコピーを作成しarr.copy
たり、たとえば を使用してビューを作成したりできますarr2=arr[2:5]
。
これらの配列のいずれかの新しいインスタンスを異なる形状で作成する方法はありますが、同じメタデータ/データ型を維持しますか?
.reshape
簡単な解決策は、サブクラスでメソッドを定義することです。このメソッドは、オブジェクトからのメタデータのコピーを担当するメソッド.reshape
を呼び出す必要があります。__array_finalize__
たとえば、MaskedArray
サブクラスは、一部のメタデータ ( 、 ...) をあるオブジェクトから別のオブジェクトに_update_from
コピーするプライベート メソッドを使用するか、これらのメタデータがまだ使用可能でない場合にデフォルトを設定します。は内で呼び出されます。例としてソースに従うことができます。_fill_value
_optinfo
_update_method
__array_finalize__