[Python] - Traspuesta

Iniciado por Meta, 18 Noviembre 2010, 07:14 AM

0 Miembros y 1 Visitante están viendo este tema.

Meta

Hola:

Ver ejercicio.


No se si vale la pena hacer este ejercicio. ¿Qué utilidad tiene en este caso?

Parace que tiene desplazamiento en los datos de la matriz y encima se incrtementó una matriz más grande. ¿Tiene mucho código para hacer esto?



Edito:

Ya entiendo algo.
Una traspuesta de una matriz la que tiene por filas las columnas,y por columnas las filas (de la matriz original)... El "cambio de tamaño" se debe a que la matriz NO es cuadrada, y las dimensiones se intercambian...

¿Cómo hago ese cambio tan a la ligera en la matriz?
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/

Novlucker

No termino de entender la duda, usa una matriz secundaría para ir almacenando los datos, ya que como puedes hacer todo con append no importa que haya que cambiar el las dimensiones de la matriz.

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Meta

Debo pasar de horizonal a vertical y al revés, de 3 x 4 a 4 x 3.

M = [[1, 2,  3], [2, 12, 6], [1, 0, -3], [10, -1, 0]]

¿Cómo se hace?
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/

Novlucker

#3
Pero entonces quieres el ejercicio hecho? Yo sigo sin entender que aprendes realmente, no aprendes si no lo haces por más que veas ejemplos, solo estas visualizando maneras de hacer las cosas, en lugar de logia de como hacerlo :-\

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Shell Root

Código (python) [Seleccionar]
# Transpose of a matrix
# Shell Root
# 2010


#Definition and setting of variables
M1 = [[1, 2,  3], [2, 12, 6], [1, 0, -3], [10, -1, 0]]
M2 = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]

for i in range(4):
for j in range(3):
M2[j][i] = M1[i][j]


for i in range(3):
print(M2[i])


Resultado,
Código (PoC) [Seleccionar]
alex@shellroot:~/Escritorio$ python PoC.py
[1, 2, 1, 10]
[2, 12, 0, -1]
[3, 6, -3, 0]
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Novlucker

Shell Root, podría ser uno que te pida las dimensiones y el input de la matriz para luego transponerla? :D

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Shell Root

xD, seh, pero como no sé Python, me toco declararla con 0's iniciales. XD
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Novlucker

jaja, era para hacerlo divertido ;D Tu también, ponte con el libro :xD

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein