Матричное зеркальное отображение / преобразование в Python - PullRequest
0 голосов
/ 29 мая 2019

Я ищу функцию Python, которая, учитывая двумерный массив A, выдаст B:

A = [[a, b, c],
     [d, e, f],
     [g, h, i]]

B = [[a, d, g],
     [b, e, h],
     [c, f, i]] 

т.е. первая строка становится первым столбцом, вторая строка становится вторым столбцом и т. д.

Спасибо.

Ответы [ 3 ]

1 голос
/ 29 мая 2019

Попробуйте это,

>>> A = np.array([[1,2,3],
              [4,5,6],
              [7,8,9]])

>>> [list(i) for i in zip(*A)]

[[1, 4, 7], [2, 5, 8], [3, 6, 9]] #output
1 голос
/ 29 мая 2019
A = [[a, b, c],
     [d, e, f],
     [g, h, i]]

B = zip(*A)
0 голосов
/ 29 мая 2019

Все, что вам нужно, это транспонирование матрицы. Вот пример

import numpy as np

A = np.array([[1,2,3],
              [4,5,6],
              [7,8,9]])
B = A.T

# array([[1, 4, 7],
#        [2, 5, 8],
#        [3, 6, 9]])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...