Asymmetric slicing python Asymmetric slicing python numpy numpy

Asymmetric slicing python


For arrays with NumPy's advanced-indexing, it would be -

X[row, np.asarray(col)[:,None]].T

Sample run -

In [9]: XOut[9]: array([[0, 1, 2],       [3, 4, 5],       [6, 7, 8]])In [10]: col=[0,1,2]     ...: row = [[0,1],[1,2],[0,1]]In [11]: X[row, np.asarray(col)[:,None]].TOut[11]: array([[0, 4, 2],       [3, 7, 5]])