Not really, but using array notation notation you can easily do it yourself.
>>> A = np.linspace(0,24,25).reshape([5,5,]) >>> A array([[ 0., 1., 2., 3., 4.], [ 5., 6., 7., 8., 9.], [ 10., 11., 12., 13., 14.], [ 15., 16., 17., 18., 19.], [ 20., 21., 22., 23., 24.]])
Make B top left 2x2 in A:
>>> B = A[0:2,0:2]
Note that B is a view; it shares data with A
>>> B[1,1] = 60 >>> print A [[ 0. 1. 2. 3. 4.] [ 5. 60. 7. 8. 9.] [ 10. 11. 12. 13. 14.] [ 15. 16. 17. 18. 19.] [ 20. 21. 22. 23. 24.]]
If you need to copy data from A, use the copy method:
>>> B = A[0:2,0:2].copy() >>> B array([[ 0., 1.], [ 5., 60.]]) >>> B[1,1] = 600 >>> B array([[ 0., 1.], [ 5., 600.]]) >>> A array([[ 0., 1., 2., 3., 4.], [ 5., 60., 7., 8., 9.], [ 10., 11., 12., 13., 14.], [ 15., 16., 17., 18., 19.], [ 20., 21., 22., 23., 24.]])