I have been experimenting with Numpy array indexing using both colon and ellipsis. However, I cannot understand the results that I am getting.
Below is the example code:
>>> a = np.array([[1,2],[3,4]])
>>> a
array([[1, 2],
[3, 4]])
>>> a[:,np.newaxis] # <-- the shape of the rows are unchanged
array([[[1, 2]],
[[3, 4]]])
>>> a[...,np.newaxis] # <-- the shape of the rows changed from horizontal to vertical
array([[[1],
[2]],
[[3],
[4]]])
The original is (2,2)
With :, it becomes (2,1,2). The new axis added after the first dimension.
With ... the shape is (2,2,1), the new shape is added last.