Fatiar uma matriz numpy ao longo de um eixo especificado dinamicamente
Gostaria de dividir dinamicamente uma matriz numpy ao longo de um eixo específico. Dado isto:
axis = 2
start = 5
end = 10
Eu quero alcançar o mesmo resultado que isto:
# m is some matrix
m[:,:,5:10]
Usando algo parecido com isto:
slc = tuple(:,) * len(m.shape)
slc[axis] = slice(start,end)
m[slc]
Mas o:
valores não podem ser colocados em uma tupla, então não consigo descobrir como criar a fatia.