Numpy: empilhar duplicatas da matriz em nova dimensão [duplicar]

Esta pergunta já tem uma resposta aqui:

copiar matriz 2D para a 3ª dimensão, N vezes (Python) 5 respostas

Eu tenho uma matriz numpy 3x3 e quero criar uma matriz 3x3xC onde a nova dimensão consiste em cópias exatas da matriz 3x3 original. Tenho certeza de que isso é solicitado em algum lugar, mas não consegui encontrar o melhor caminho. Eu trabalhei como fazer isso para uma matriz unidimensional simples x:

new_x = np.tile(np.array(x, (C, 1))

que repete a matriz, faça:

np.transpose(np.expand_dims(new_x, axis=2),(2,1,0))

que expande a dimensão e alterna o eixo para que a matriz seja repetida na terceira dimensão (embora isso funcione, não tenho certeza se essa é a melhor maneira de fazê-lo) - qual é a maneira mais eficiente de fazer isso por um matriz numpy geral nxn?

questionAnswers(1)

yourAnswerToTheQuestion