NumPyのドキュメントhereによれば、デフォルトでマトリックスはallow_pickle=True
で保存され、さらにこのデフォルト動作:NumPy: 'allow_pickle = False'で 'np.save()'を使用した場合の結果
allow_pickle:ブール、オプション
はPythonの漬物を使用してオブジェクト配列を保存できるようにします。 pickleを許可しない理由としては、セキュリティ(pickleされたデータをロードすると任意のコードを実行することができる)や移植性があります(pickleされたオブジェクトはPythonの異なるインストールではロードできません。 Python 2とPython 3)を使用しています。
デフォルト:true
それを読んだ後、私はもちろんallow_pickle=False
を使用することを好むだろう - しかし、それはこの方法を使用する場合、それらは異なるが何であるかを教えてくれません。欠点にもかかわらず、デフォルトでallow_pickel=True
を使用する何らかの理由があるはずです。
allow_pickle=False
を使用するかどうかと、動作が異なるかどうかを教えてください。
NumPyは非標準オブジェクトを保存するためにpickleモジュールを使用すると思いますので、標準のデータ型で動作するようにコードを制限します。 – abukaj
興味深くて意味があります。つまり、NumPy配列内にインスタンスを保存するクラスがある場合、 'pickle'の使用を無効にすると、マトリックスの内容を保存することができなくなります。 – SalatYerakot