
On Wed, Jun 12, 2013 at 6:36 PM, Chris Barker - NOAA Federal < chris.barker@noaa.gov> wrote:
On Wed, Jun 12, 2013 at 5:10 AM, Nathaniel Smith <njs@pobox.com> wrote:
Personally I think that overloading np.empty is horribly ugly, will continue confusing newbies and everyone else indefinitely, and I'm 100% convinced that we'll regret implementing such a warty interface for something that should be so idiomatic.
I agree.
... deprecate np.ma.filled
Please don't. Rather just live with the inconsistency between numpy and numpy.ma APIs. If that bothers you, just tell yourself that we'll get an NA dtype at some point and that that will make numpy.ma much less important:)
in favor
of masked_array.filled (which does exactly the same thing) and eventually switch np.ma.filled to be consistent with the new np.filled.
+1
I also don't really see why an np.empty() constructor exists, it seems to do the same thing that np.ndarray() does.
I had always assumed that np.ndarray() was a "low-level" interce that you really don't want to use in regular code (maybe for subclassing array...), as the docs say:
""" Arrays should be constructed using `array`, `zeros` or `empty` (refer to the See Also section below). The parameters given here refer to a low-level method (`ndarray(...)`) for instantiating an array. """
Am I wrong? is there any reason )other than history to have np.empty()
But in any case, I like np.filled(), as being analogous to ones(), zeros() and empty()...
I like np.filled as well. np.fill_with sounds fine too. Ralf