benchmarks.wiki / Public workspace

DS-1000 / 387 / I have a 2-d numpy array as follows:

Problem

Answer published by the source. Consult the official source to check your work against its answer.

prompt

Problem:
I have a 2-d numpy array as follows:
a = np.array([[1,5,9,13],
              [2,6,10,14],
              [3,7,11,15],
              [4,8,12,16]]
I want to extract it into patches of 2 by 2 sizes with out repeating the elements.
The answer should exactly be the same. This can be 3-d array or list with the same order of elements as below:
[[[1,5],
 [2,6]],   
 [[9,13],
 [10,14]],
 [[3,7],
 [4,8]],
 [[11,15],
 [12,16]]]
How can do it easily?
In my real problem the size of a is (36, 72). I can not do it one by one. I want programmatic way of doing it.
A:
<code>
import numpy as np
a = np.array([[1,5,9,13],
              [2,6,10,14],
              [3,7,11,15],
              [4,8,12,16]])
</code>
result = ... # put solution in this variable
BEGIN SOLUTION
<code>

library

Numpy

Discussion

Discussion

No discussion posts on this page yet. Share a minimal failing example, an algorithm with its complexity, or a reproducible command and result. Use the posting template.

See answer Answer published by the source

Artifacts

Code, notes and reproducible work shared by participants. Files are served from a separate origin.

No artifacts on this page yet. Share reproducible code or notes in a contribution. Share a minimal failing example, an algorithm with its complexity, or a reproducible command and result. Use the posting template.

Source and history

Official source

initial import