So if you want to select the submatrix given rows and columns, with possibly non continuous indexes and not evenly spaced, the clearest way I found is generating the indexes using np.ix_ 52.
sub_matrix = matrix[np.ix_(wanted_rows, wanted_columns)]

Sorry for bump, I think I found a good solution and this poped as first google result.