[Numpy-discussion] indexed arrays ignoring duplicates

josef.pktd@gmai... josef.pktd@gmai...
Wed Sep 29 20:11:20 CDT 2010


On Wed, Sep 29, 2010 at 9:03 PM, Damien Morton <dmorton@bitfurnace.com> wrote:
> On Thu, Sep 30, 2010 at 3:28 AM, Robert Kern <robert.kern@gmail.com> wrote:
>> On Wed, Sep 29, 2010 at 12:00, Pauli Virtanen <pav@iki.fi> wrote:
>>> Wed, 29 Sep 2010 11:15:08 -0500, Robert Kern wrote:
>>> [clip: inplace addition with duplicates]
>>>> Use numpy.bincount() instead.
>>>
>>> It might be worthwhile to add a separate helper function for this
>>> purpose. Bincount makes a copy that could be avoided, and it is difficult
>>> to find if you don't know about this trick.
>>
>> I'm fairly certain that most of the arrays used are fairly small, as
>> such things are reckoned. I'm not sure that in-place modification
>> would win us much. And I'm not sure what other name for the function
>> would make it easier to find. AFAICT, using bincount() this way is not
>> really a "trick"; it's just the right way to do exactly this job. If
>> anything, "x.fill(0);x[i] += 1" is the "trick".
>
> bincount only works for gathering/accumulating scalars. Even the
> 'weights' parameter is limited to scalars.

Do you mean that bincount only works with 1d arrays? I also think that
this is a major limitation of it.

>
> I propose the name 'gather()' for the helper function that does this.

I don't think "gather" is an obvious name to search for.

Josef

> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>


More information about the NumPy-Discussion mailing list