Próbuję utworzyć funkcję transpozycji macierzy dla języka Python, ale nie mogę jej uruchomić. Powiedz, że tak
theArray = [['a','b','c'],['d','e','f'],['g','h','i']]
i chcę, żeby moja funkcja wymyśliła
newArray = [['a','d','g'],['b','e','h'],['c', 'f', 'i']]
Innymi słowy, gdybym miał wydrukować tę tablicę 2D jako kolumny i wiersze, chciałbym, aby wiersze zamieniły się w kolumny, a kolumny w wiersze.
Dotarłem do tej pory, ale to nie działa
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
zitertools
może zaoszczędzić pamięć dla dużych tablic.