Estou tentando criar uma função de transposição de matriz para python, mas não consigo fazê-lo funcionar. Diga que eu tenho
theArray = [['a','b','c'],['d','e','f'],['g','h','i']]
e eu quero que minha função venha com
newArray = [['a','d','g'],['b','e','h'],['c', 'f', 'i']]
Portanto, em outras palavras, se eu imprimir essa matriz 2D como colunas e linhas, gostaria que as linhas se transformassem em colunas e colunas em linhas.
Eu fiz isso até agora, mas não funciona
def matrixTranspose(anArray):
transposed = [None]*len(anArray[0])
for t in range(len(anArray)):
for tt in range(len(anArray[t])):
transposed[t] = [None]*len(anArray)
transposed[t][tt] = anArray[tt][t]
print transposed
izip
desdeitertools
pode salvar a memória para grandes matrizes.