Estoy tratando de crear una función de transposición de matriz para Python, pero parece que no puedo hacer que funcione. Di que tengo
theArray = [['a','b','c'],['d','e','f'],['g','h','i']]
y quiero que mi función surja
newArray = [['a','d','g'],['b','e','h'],['c', 'f', 'i']]
En otras palabras, si imprimiera esta matriz 2D como columnas y filas, me gustaría que las filas se convirtieran en columnas y columnas en filas.
Hice esto hasta ahora pero no 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
puede ahorrar memoria para matrices grandes.