[Numpy-discussion] numpy.filled, again

Nathaniel Smith njs@pobox....
Sat Jun 29 04:37:55 CDT 2013


So this petered off...any objections to np.full?
On 29 Jun 2013 05:03, <josef.pktd@gmail.com> wrote:

> On Wed, Jun 12, 2013 at 8:10 AM, Nathaniel Smith <njs@pobox.com> wrote:
> > Hi all,
> >
> > It looks like we've gotten a bit confused and need to untangle
> > something. There's a PR to add new functions 'np.filled' and
> > 'np.filled_like':
> >   https://github.com/numpy/numpy/pull/2875
> > And there was a discussion about this on the list back in January:
> >   http://thread.gmane.org/gmane.comp.python.numeric.general/52763
> >
> > I think a reasonable summary of the opinions in the thread are:
> > - This functionality is great, ...
> > - ...but we can't call it 'np.filled' because there's also
> > 'np.ma.filled' which does something else...
> > - ...but there really aren't any better names...
> > - ...so we should overload np.empty, like: 'np.empty(shape, fill=value)'
> >
> > In the mean time the original submitter has continued puttering along
> > polishing the original patch, and it's ready to merge... except it's
> > still the original interface, somehow the thread discussion and the PR
> > discussion never met up.
> >
> > So, we have to decide what to do.
> >
> > 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. (Unfortunately I got busy
> > and didn't actually say this in the previous thread though.) So I
> > think we should just merge the PR as is. The only downside is the
> > np.ma inconsistency, but, np.ma is already inconsistent (cf.
> > masked_array.fill versus masked_array.filled!), somewhat deprecated,
> > and AFAICT there are far more people who will benefit from a clean
> > np.filled idiom than who actually use np.ma (and in particular its
> > fill-value functionality). So there would be two
> > bad-but-IMHO-acceptable options: either live with an inconsistency
> > between np.filled and np.ma.filled, or deprecate np.ma.filled 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.
> >
> > But, that's just my opinion.
> >
> > -n
> > _______________________________________________
> > NumPy-Discussion mailing list
> > NumPy-Discussion@scipy.org
> > http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
>
> Why we need this animal whatever it is called
>
>  Scientific Python @SciPyTip
> Create a 2x3 array filled with integer 7's: 7*np.ones((2,3), int)
>
> and I just did this yesterday,  np.nan * np.ones(3)
> maybe I should have used np.zeros(3) / 0.
>
> Josef
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/numpy-discussion/attachments/20130629/efe18dba/attachment.html 


More information about the NumPy-Discussion mailing list