[Numpy-discussion] Setting small numbers to zero.
Wed Mar 17 14:18:58 CDT 2010
On Wed, Mar 17, 2010 at 12:08 PM, Robert Kern <firstname.lastname@example.org> wrote:
> On Wed, Mar 17, 2010 at 14:03, Keith Goodman <email@example.com> wrote:
>> On Wed, Mar 17, 2010 at 12:04 PM, Christopher Barker
>> <Chris.Barker@noaa.gov> wrote:
>>> Friedrich Romstedt wrote:
>>>> import numpy
>>>> import time
>>>> a = numpy.random.random((2000, 2000))
>>>> start = time.time()
>>>> a[abs(a) < 10] = 0
>>>> stop = time.time()
>>> I highly recommend ipython and its "timeit" function --much better for this.
>> One of the methods, the fast one, uses an in-place operation, so
>> timeit won't work. But for cases where timeit does work, yes, it is
> You need to provide correct setup code.
> from timeit import Timer
> t = Timer("a[abs(a) < 0.1] = 0", "import
> numpy;a=numpy.random.random((2000, 2000))")
BTW, is there some way to get the above to give the same output (and
same number of runs etc) as
timeit a[abs(a) < 0.1] = 0
More information about the NumPy-Discussion