[Numpy-discussion] fancy view question

Robert Kern robert.kern at gmail.com
Tue Feb 17 10:09:38 EST 2009


On Tue, Feb 17, 2009 at 08:44, Gael Varoquaux
<gael.varoquaux at normalesup.org> wrote:
> On Tue, Feb 17, 2009 at 04:42:21PM +0200, Stéfan van der Walt wrote:
>> Or, more generally:
>
>> import numpy as np
>
>> def zoom(x, factor=2):
>>         rows, cols = x.shape
>>         row_stride, col_stride = x.strides
>>         view = np.lib.stride_tricks.as_strided(x,
>>                         (rows, factor, cols, factor),
>>                         (row_stride, 0, col_stride, 0))
>>         return view.reshape((rows*factor, cols*factor))
>
> That's handy, you should commit this somewhere. Actually, it would be
> even cooler if you could have different zoom factor in different
> direction :).

np.repeat(np.repeat(x, 2, axis=0), 2, axis=1)

stride_tricks are fun, but this is already a solved problem in numpy.

-- 
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless
enigma that is made terrible by our own mad attempt to interpret it as
though it had an underlying truth."
  -- Umberto Eco



More information about the NumPy-Discussion mailing list