Как транспортировать матрицу: Как транспонировать матрицу, примеры

Содержание

Как транспонировать матрицу: алгоритм, пример, свойства

Sign in

Password recovery

Восстановите свой пароль

Ваш адрес электронной почты

MicroExcel.ru Математика Алгебра Транспонирование матрицы

В данной публикации мы рассмотрим, как выполняется транспонирование матрицы, приведем практический пример для закрепления теоретического материала, а также перечислим свойства данной операции.

  • Алгоритм транспонирования матрицы
  • Свойства транспонирования матриц

Алгоритм транспонирования матрицы

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

Если исходная матрица имеет обозначение A, то транспонированную обычно обозначают как AT.

Пример
Найдем матрицу AT, если исходная A выглядит так:

Решение:

Свойства транспонирования матриц

1. Если матрицу транспонировать дважды, то в итоге получится она же.

(AT)T = A

2. Транспонировать сумму матриц – это то же самое, что и просуммировать транспонированные матрицы.

(A + B)T = AT + BT

3. Транспонировать произведение матриц – это то же самое, что и умножить транспонированные матрицы, но в обратном порядке.

(AB)T = BT · AT

4. Скаляр при транспонировании можно вынести.

(λA)T = λAT

5. Определитель транспонированной матрицы равняется определителю исходной.
|AT| = |A|

ЧАЩЕ ВСЕГО ЗАПРАШИВАЮТ

Таблица знаков зодиака

Нахождение площади трапеции: формула и примеры

Нахождение длины окружности: формула и задачи

Римские цифры: таблицы

Таблица синусов

Тригонометрическая функция: Тангенс угла (tg)

Нахождение площади ромба: формула и примеры

Нахождение объема цилиндра: формула и задачи

Тригонометрическая функция: Синус угла (sin)

Геометрическая фигура: треугольник

Нахождение объема шара: формула и задачи

Тригонометрическая функция: Косинус угла (cos)

Нахождение объема конуса: формула и задачи

Таблица сложения чисел

Нахождение площади квадрата: формула и примеры

Что такое тетраэдр: определение, виды, формулы площади и объема

Нахождение объема пирамиды: формула и задачи

Признаки подобия треугольников

Нахождение периметра прямоугольника: формула и задачи

Формула Герона для треугольника

Что такое средняя линия треугольника

Нахождение площади треугольника: формула и примеры

Нахождение площади поверхности конуса: формула и задачи

Что такое прямоугольник: определение, свойства, признаки, формулы

Разность кубов: формула и примеры

Степени натуральных чисел

Нахождение площади правильного шестиугольника: формула и примеры

Тригонометрические значения углов: sin, cos, tg, ctg

Нахождение периметра квадрата: формула и задачи

Теорема Фалеса: формулировка и пример решения задачи

Сумма кубов: формула и примеры

Нахождение объема куба: формула и задачи

Куб разности: формула и примеры

Нахождение площади шарового сегмента

Что такое окружность: определение, свойства, формулы

Как транспонировать матрицу в Python (с библиотеками и без них)

Перевод статьи «Transpose a Matrix».

Сегодня мы хотим разобрать, как транспонировать матрицу в Python. Однако сначала давайте рассмотрим, что представляет из себя матрица сама по себе и в чём заключается процесс транспонирования.

Итак, матрица состоит из строк и столбцов. Создать матрицу можно по-разному, но самый простой способ – использовать вложенные списки, как показано ниже:

matrix = [[1, 2, 4], [31, 17, 15]]

Внутренние списки представляют собой строки, а каждый элемент внутри списка называется столбцом. Итак, в приведенном выше примере у нас есть две строки и три столбца, т.е. мы имеем дело с матрицей 2 на 3. Стоит помнить, что индексация Python начинается с нуля.

Транспонирование матрицы означает, что мы меняем строки на столбцы или столбцы на строки. Теперь давайте обсудим различные методы транспонирования матрицы.

Метод 1. Транспонирование матрицы с помощью NumPy transpose()

Первый метод, который мы разберем, — это использование библиотеки NumPy. NumPy в основном работает с массивами в Python, а для транспонирования мы можем вызвать метод transpose().

Давайте разберем всё по порядку. Для начала нам нужно импортировать модуль NumPy как np.

Дальше, в ячейке номер [25] мы создаем массив NumPy с именем arr_matrix.

В ячейке номер [26] мы вызываем метод transpose() для нашей матрицы – объекта arr_matrix, который мы создали ранее.

В ячейке номер [27] мы выводим на экран исходную матрицу arr_matrix.

А в ячейке номер [28] – транспонированную матрицу arr_transpose. Можем заметить, что в результате мы получили именно то, что нам было нужно – транспонированную матрицу.

Метод 2. Использование метода numpy.transpose()

Мы также можем транспонировать матрицу в Python с помощью numpy. transpose(). При этом мы передаем матрицу в метод transpose() в качестве аргумента.

В ячейке номер [29] мы создаем матрицу, используя массив NumPy, с именем arr_matrix.

Далее мы передаем arr_matrix в метод transpose() и сохраняем результат в новую переменную arr_transpose.

В ячейке номер [31] мы печатаем исходную матрицу arr_matrix.

А дальше мы выводим на экран транспонированную матрицу arr_transpose. Получаем результат аналогичный тому, что получили в первом примере.

Метод 3. Транспонирование матрицы с использованием библиотеки SymPy

Применение библиотеки SymPy – это еще один подход к транспонированию матрицы. Эта библиотека использует символьную математику для решения алгебраических задач.

Сначала нам, конечно же, нужно импортировать библиотеку SymPy. Она не поставляется вместе с Python по умолчанию, поэтому вы должны установить её в своей системе, иначе код не будет работать.

В ячейке номер [34] мы создаем матрицу с помощью библиотеки sympy.

Дальше, в ячейке [35], мы вызываем transpose (T) при помощи точечного оператора и сохраняем результаты в новую переменную sympy_transpose.

В ячейке номер [36] мы печатаем исходную матрицу matrix. А в ячейке номер [37] – транспонированную матрицу sympy_transpose. Как видим, у нас получилась транспонированная матрица.

Метод 4. Транспонирование матрицы с использованием вложенного цикла

В Python матрицу можно транспонировать и без применения каких-либо библиотек. Для этого нам придется использовать вложенные циклы.

Мы создаем одну матрицу, а затем вторую (того же размера, что и первая) — для сохранения результатов после транспонирования. При этом важно отметить, что мы далеко не всегда знаем размерность исходной матрицы. Поэтому матрицу для результата мы создаем не напрямую, а используя размер исходной.

В ячейке номер [38] мы создаем матрицу и выводим ее на экран.

В следующей ячейке мы применяем «питонический» способ узнать размерность транспонированной матрицы, используя исходную. А именно — используем генератор списков со вложенными циклами for.

В ячейке [40] мы запускаем два цикла for. Внешний цикл предназначен для строк, а вложенный – для столбцов.

В ячейке номер [41] мы выводим исходную матрицу Matrix. А в ячейке [42] — транспонированную матрицу trans_Matrix.

Метод 5. Использование генератора списка

Следующий метод, который мы разберем, — это использование генератора списка. Этот метод похож на предыдущий с использованием вложенных циклов, но он более «питонический». Можно сказать, что это более продвинутый способ транспонирования матрицы в одной строке кода без использования библиотек.

Сначала мы создаем матрицу m, используя вложенные списки.

Затем в ячейке номер [44] мы используем вложенные циклы, как и в предыдущем примере. Однако здесь мы делаем это в одну строчку, используя генератор списков. Более того, тут нет никакой необходимости менять индексы [j] [i] местами, как мы это делали в предыдущий раз.

В следующей ячейке мы выводим исходную матрицу m. После этого в ячейке номер [42] выводим транспонированную матрицу trans_m. Как видим, желаемый результат получен.

Метод 6. Транспонирование матрицы с помощью pymatrix

Pymatrix – ещё одна облегченная библиотека для матричных операций в Python. Мы можем выполнить транспонирование и с её помощью.

В ячейке номер [43] мы импортируем библиотеку pymatrix. Она не поставляется вместе с Python по умолчанию, поэтому, чтобы код работал корректно, нужно установить ее в своей системе перед использованием.

Затем при помощи библиотеки pymatrix мы создаем матрицу (в ячейке [44]).

В ячейке номер [45] вызываем метод trans() для нашей матрицы и сохраняем результаты в новую переменную pymatrix_transpose.

Потом мы выводим на экран исходную матрицу matrix. А в ячейке номер [47] выводим уже транспонированную матрицу pymatrix_transpose. Как видим, код отработал правильно.

Метод 7. Использование метода zip

Zip – еще один метод транспонирования матрицы.

В ячейке номер [63] мы создаем новую матрицу, используя вложенные списки.

В ячейке номер [64] мы передаем матрицу в zip с помощью оператора *. Мы вызываем каждую строку, а затем преобразуем эту строку в новый список, который становится транспонированной матрицей.

Заключение

Итак, сегодня мы рассмотрели, как транспонировать матрицу в Python. Мы разобрали различные методы, которые могут помочь нам в транспонировании матрицы (с использованием библиотек и без них).

Мы также познакомились с несколькими новыми библиотеками, такими как pymatrix и sympy.

Надеемся, теперь у вас не осталось вопросов о том, как транспонировать матрицу. Более того, вы можете выбрать наиболее подходящий способ для решения этой задачи.

Объяснение урока: Транспонирование матрицы

В этом объяснении мы узнаем, как найти транспонирование матрицы и определить симметричные и кососимметричные матрицы.

Сначала вспомним определение матрицы.

Определение: Матрицы

Матрица размером 𝑚×𝑛  представляет собой прямоугольный массив записи с 𝑚 строки и столбцы 𝑛, определенные 𝐴=𝑎, где 𝑖∈{1,…,𝑚} и 𝑗∈{1,…,𝑛}. Каждый 𝑎 называется запись или элемент матрицы.

Теперь мы хотим исследовать транспонирование матрицы, которая операция, которая переворачивает матрицу по ее диагональным элементам. К лучшему Чтобы проиллюстрировать эту концепцию, рассмотрим следующую матрицу 3×2. 𝐴=30−2147.

В соответствии с нашим определением выше это можно записать как 𝐴=𝑎, где 𝑖∈{1,2,3} и 𝑗∈{1,2}. Когда мы ссылаемся на диагональных записей, мы имеем в виду записи вида 𝑎, которые в данном случае являются записями 𝑎 и 𝑎. Мы выделяем эти следующим образом:

Теперь, чтобы транспонировать матрицу, мы переворачиваем матрицу по по диагонали, чтобы строки стали столбцами, а столбцы — строками. транспонированная матрица обозначается 𝐴, где 𝑇 Верхний индекс означает «транспонированный». Давайте покажите это ниже:

Обратите внимание, что только диагональные записи остаются на том же месте, а записи ниже диагонали поменялись местами с теми, что выше диагонали. В частности, строки и столбцы поменялись местами. Чтобы визуализировать это, пусть выделим первую строку исходной матрицы:

В транспонированной матрице это становится первым столбцом:

Точно так же вторая и третья строки становятся вторым и третьим столбцами, как показано ниже:

Итак, как мы видим, транспонирование матриц можно рассматривать как замену строки и столбцы друг с другом.

Поскольку строки и столбцы матрицы меняются местами, когда мы транспонируем матрица, количество строк и количество столбцов матрицы также поменялся местами. Для матрицы 𝐴, которая имеет порядок 2×3, мы можем видим, что 𝐴 имеет порядок 3×2. Мы можно обобщить следующим образом.

Определение: Порядок транспонирования матрицы

Если матрица 𝐴 имеет порядок 𝑚×𝑛, то транспонирование матрицы 𝐴 имеет порядок 𝑛×𝑚.

В нашем первом примере мы рассмотрим прямое использование этого определения для нахождения порядок матрицы.

Пример 1. Нахождение порядка транспонирования матрицы

Если 𝑋 — матрица порядка 4×1, то каков порядок матрица 𝑋?

Ответ

Матрица 𝑋 является транспонированной матрицей 𝑋. Напомним, что при транспонировании матрицы ее строки меняются местами со столбцами. В в частности, это означает, что количество строк и количество столбцов матрицы будут заменены. Другими словами, если матрица имеет порядок 𝑚×𝑛, транспонирование матрицы будет порядка 𝑛×𝑚.

В этом примере нам дано, что матрица 𝑋 имеет порядок 4×1, что означает 𝑚=4 и 𝑛=1. Следовательно, транспонирование 𝑋, которое это 𝑋, порядок 𝑛×𝑚=1×4.

Визуально мы можем видеть, что транспонирование оказывает следующее влияние на порядок матрицы: 𝑋=∗∗∗∗⟶𝑋=(∗∗∗∗).

Следовательно, порядок матрицы 𝑋 равен 1×4.

В предыдущем примере мы нашли порядок транспонирования матрицы. Позволять Теперь мы обсудим полное определение транспонирования матрицы и то, как идентифицировать его записи.

Определение: транспонирование матрицы

Рассмотрим матрицу 𝑚×𝑛 𝐴 определяется как 𝐴=𝑎. Транспонирование 𝐴, обозначаемый 𝐴, является матрица 𝑛×𝑚 определяется как 𝐴=𝑎.

В приведенном выше определении мы видим, что индексы строк и столбцов (𝑖 и 𝑗) меняются местами. Это имеет тот же эффект замены строк и столбцов матрицы, как мы видели выше. Например, мы можем видеть ниже эту запись 𝑎 в матрица 𝐴 становится элементом 𝑎 в матрице 𝐴:

Другими словами, запись в строке 3 и столбце 1 становится записью в строке 1 и столбец 3.

Любые диагональные записи, такие как 𝑎=3, не меняются.

Когда мы хотим найти транспонированную матрицу, первым делом нужно найти порядок новой матрицы. После этого мы должны найти записи, переворачивая матрица по диагонали. В следующем примере мы будем практиковаться, как сделать этот.

Пример 2. Нахождение транспонирования матрицы

Учитывая, что 𝐴=−26−6184, найти 𝐴.

Ответ

Мы знаем, что 𝐴 является транспонированием матрицы 𝐴, поэтому нам нужно найти транспонирование данной матрицы в этот пример.

Напомним, что транспонирование матрицы 𝑚×𝑛 имеет вид заказ 𝑛×𝑚. Поскольку 𝐴 является Матрица 2 × 3, транспонированная 𝐴 будет матрицей 3×2, что приведет к следующему матрица с пустыми элементами: 𝐴=∗∗∗∗∗∗.

Теперь заполним элементами матрицы 𝐴. Отзывать что при транспонировании матрицы ее строки меняются местами со столбцами.

В других слов, первая строка становится первым столбцом, вторая строка становится второй столбец и так далее. Итак, рассмотрим каждую строку 𝐴 и запишите каждый в виде соответствующих столбцов 𝐴.

Первая строка 𝐴 равна

В транспонированной матрице это становится первым столбцом:

Затем у нас есть вторая строка:

Это становится вторым столбцом:

Это приводит к транспонированной матрице 𝐴=−2168−64.

В предыдущем примере мы нашли транспонирование заданной матрицы, подставив каждая строка матрицы как соответствующий столбец транспонированной матрицы. Этот метод можно применять к матрицам любого порядка, как мы объясним ниже.

Практическое руководство. Транспонирование матрицы

Чтобы найти транспонирование матрицы 𝑚×𝑛, мы можем следуйте этой процедуре:

  1. Определите, что порядок матрицы транспонирования 𝑛×𝑚 и что, таким образом, он имеет 𝑛 строк и 𝑚 столбцы, как показано ниже:
  2. Рассмотрим каждую строку матрицы одну за другой и запишем ее в виде соответствующий столбец в транспонированной матрице:
  3. Завершите процесс транспонирования 𝐴: 𝐴=⎛⎜⎜⎝𝑎𝑎…𝑎𝑎𝑎…𝑎⋮⋮⋱⋮𝑎𝑎…𝑎⎞⎟⎟⎠.  

Следует отметить, что транспонирование матрицы имеет особое свойство, когда оно применяется два раза подряд. Мы проследим это свойство в следующем пример.

Пример 3. Применение дважды подряд транспонирования матрицы

Учитывая матрицу 𝐴=−84341−1, найти 𝐴.

Ответ

Мы знаем, что верхний индекс 𝑇 рядом с матрицей указывает транспонирование матрицы. Здесь мы видим, что есть два 𝑇 верхние индексы. Чтобы понять это обозначение, сначала отметим что 𝐴 является транспонированием данной матрицы 𝐴. Затем заметим, что 𝐴 равно транспонирование транспонирования данной матрицы 𝐴, означающее, что нам нужно применить транспонирование к матрице 𝐴 дважды подряд.

Следовательно, в этом примере нам нужно применить транспонирование к матрице 𝐴 два раза подряд. Мы можем начать с первого обнаружения матрица 𝐴, а затем применить транспонирование к результирующая матрица.

Напомним, что транспонирование матрицы 𝑚×𝑛 имеет вид заказ 𝑛×𝑚. Поскольку 𝐴 является Матрица 2×3, 𝐴 будет Матрица 3 × 2, ведущая к следующей матрице с пустые записи: 𝐴=∗∗∗∗∗∗.

Напомним, что мы можем найти транспонирование матрицы, поменяв местами строки и столбцы вокруг друг друга. Следовательно, первый ряд 𝐴 становится первым столбцом 𝐴:

Точно так же мы запишем вторую строку 𝐴 как вторую столбец 𝐴:

Таким образом, мы получили транспонирование 𝐴: 𝐴=−84413−1.

Мы повторяем процесс, снова выполняя транспонирование, чтобы найти 𝐴. Так как 𝐴 является Матрица 3×2, 𝐴 будет матрицей 2×3, что приведет к следующему матрица с пустыми элементами: 𝐴=∗∗∗∗∗∗.

Как и раньше, поменяем местами ряды 𝐴 со столбцами 𝐴. Начиная с первый ряд, у нас есть

Вторая строка дает нам

Для последней строки у нас есть

Как мы видим, эта матрица фактически идентична 𝐴. Это связано с тем, что замена строк и столбцов дважды приводит к тому, что они такие же, как были раньше. В заключение имеем 𝐴=−84341−1.

В предыдущем примере мы видели, что применение транспонирования к заданной матрице два раза подряд приводили к одной и той же матрице. На самом деле это общее правило это относится к любой матрице.

Правило: двукратное применение транспонирования к матрице

Для матрицы 𝐴 двойное применение транспонирования приводит к та же матрица. Другими словами, 𝐴=𝐴.

Увидев, что последовательные применения транспонирования приводят к одному и тому же результату матрица, мы могли бы задаться вопросом, есть ли какие-либо другие свойства, которые матрица транспонировать есть. Например, существуют ли такие матрицы, что если применить транспонировать только один раз, мы все равно получим ту же матрицу? Как оказалось, есть определенный класс матриц, которые подчиняются такому свойству.

Определение: Симметричные и кососимметричные матрицы

Пусть 𝐴=𝑎 — матрица 𝑛×𝑛 (то есть квадратная матрица). Тогда 𝐴 является -симметричной -матрицей, если 𝐴=𝐴.

Альтернативно, 𝐴 является кососимметричной матрицей , если 𝐴=−𝐴.

Отметим, что в приведенном выше определении матрица должна быть квадратной матрицей. Это связано с тем, что если матрица не является квадратной, порядок матрицы изменится когда мы применяем транспонирование к матрице. Следовательно, симметричный и кососимметричный матрицы должны быть квадратными матрицами.

Также напомню, что когда мы используем транспонирование матрицы, мы меняем местами индексы каждой записи, поэтому 𝑎⟶𝑎. Следовательно, в чтобы матрица была равна своей транспонированной, мы требуем, чтобы 𝑎=𝑎. Аналогично для кососимметричных матриц требуется 𝑎=−𝑎. Заметим, что следствием этого является то, что диагональ элементы кососимметричной матрицы должны быть равны нулю, так как 𝑎=−𝑎 иначе не удовлетворился бы. Обобщим эти свойства ниже.

Свойство: индексы симметричных и кососимметричных матриц

Пусть 𝐴=𝑎 — квадратная матрица. 𝐴 является -симметричной -матрицей тогда и только тогда, когда 𝑎=𝑎𝑖,𝑗.для всех

Аналогично, 𝐴 является кососимметричной матрицей тогда и только тогда, когда 𝑎=−𝑎𝑖,𝑗.для всех

Имея в виду как определение, так и приведенное выше свойство, мы можем начать представьте, как выглядит симметричная или кососимметричная матрица. Рассмотрим следующую матрицу, где выделена диагональ:

Обратите внимание, что матрица останется неизменной, если мы будем отражать каждую запись в течение диагональ. В этом смысле матрица симметрична , где ось симметрии это диагональ. По индексам мы видим, что 𝑎=𝑎 для каждого 𝑖,𝑗; например, 𝑎=𝑎=7 и 𝑎=𝑎=0. Отметим, что по умолчанию диагональные элементы подчиняются этому свойству, поскольку они имеют форму 𝑎 (перестановка индексов строк и столбцов не дает никакого эффекта).

Аналогичным образом можно идентифицировать кососимметричные матрицы. Рассмотрим следующую матрицу:

В этом случае по обе стороны от диагонали элементы одинаковы, но с противоположные знаки. Например, 𝑏=−4, а 𝑏=4, и 𝑏=−6, а 𝑏=6. В частности, все диагональные элементы равны нулю, т. е. 𝑏=0 для 𝑖∈{1,2,3}. В в общем, мы можем видеть, что 𝑏=−𝑏; таким образом, 𝐵 равно кососимметричному . Мы видим, что диагональ записи, равные 0, являются необходимым следствием этого, поскольку 𝑏=−𝑏, что может быть верно только для 𝑏=0.

В качестве дополнительного примечания давайте рассмотрим случай, когда у нас есть квадрат-ноль matrix:

Транспонирование этой матрицы не даст никакого эффекта, так как все элементы одинаковы. Таким образом, 𝐶=𝐶 и 𝐶 симметрично. Однако отметим также, что 𝐶=−𝐶, что означает, что 𝐶 также кососимметрично. В самом деле, матрицы с квадратным нулем являются единственным типом матриц, которые одновременно являются симметричными и кососимметричными в в то же время.

Давайте теперь применим наши знания о симметричных матрицах в следующем пример.

Пример 4. Нахождение неизвестных элементов, делающих данную матрицу симметричной

Найдите значение 𝑋, которое делает матрицу 𝐴=−15𝑥−3−43−8 симметрично.

Ответ

Напомним, что для того, чтобы матрица была симметричной, она должна быть квадратной и должен удовлетворить 𝐴=𝐴, где 𝐴 — транспонирование 𝐴. Как количество строк и количество столбцов 𝐴 оба равной 2, это действительно квадратная матрица, удовлетворяющая первому условию. Чтобы найти, какие значения 𝑥 удовлетворяют второму условие, мы можем применить транспонирование к 𝐴 и приравнять его к себе.

Для начала посчитаем 𝐴. С 𝐴 представляет собой матрицу 2 × 2, порядок транспонированной матрицы также будет 2×2. Чтобы найти записи 𝐴, мы можем переписать строки 𝐴 как столбцы 𝐴 следующим образом:

Таким образом, транспонирование 𝐴=−1−435𝑥−3−8.

Чтобы удовлетворить 𝐴=𝐴, приравняем эту матрицу к исходная матрица, данная нам, чтобы получить следующее матричное уравнение: −15𝑥−3−43−8=−1−435𝑥−3−8.

Чтобы проверить равенство двух матриц, мы должны проверить, что соответствующие записи равны. Ясно, что диагональные элементы такие же, как и транспонирование не меняет их. Выделим недиагональные записи который должен быть равен ниже:

Это дает нам два уравнения, которым мы должны удовлетворять: −43=5𝑥−3,5𝑥−3=−43.

Мы видим, что оба уравнения одинаковы. Поскольку это линейное уравнение, мы можем решить его, переставив его так, чтобы 𝑥 является предметом: −40=5𝑥−8=𝑥.

Следовательно, 𝑥=−8.

Обратите внимание, что в предыдущем примере также можно было бы найти 𝑥 с помощью следующего свойства симметричных матриц: 𝑎=𝑎𝑖,𝑗.для всех

Для матрицы 2×2 нам нужно только убедиться, что 𝑎=𝑎. Мы видим, что в данной матрице: 𝑎=5𝑥−3,𝑎=−43.

Таким образом, установка 𝑎=𝑎 приводит к тому же уравнению что мы нашли в примере.

Теперь рассмотрим пример, в котором мы рассматриваем кососимметричную матрицу.

Пример 5. Нахождение неизвестных элементов, делающих данную матрицу кососимметричной

Учитывая, что матрица 𝐵=0−2𝑥−63𝑧+1403𝑧−3𝑦+6𝑥−120 кососимметрично, найдите значение 𝑥+𝑦+𝑧.

Ответ

Напомним, что для того, чтобы матрица была кососимметричной, она должна быть квадратной и он должен удовлетворять условию 𝐵=−𝐵, где 𝐵 — транспонирование 𝐵. По количеству строк и количеству столбцов 𝐵 оба равны 3, это действительно квадратная матрица. К применяя транспонирование к 𝐵 и приравнивая его к себе, мы надеемся найти, какие значения 𝑥, 𝑦 и 𝑧 удовлетворяют второму условию.

Начнем с вычисления 𝐵. С 𝐵 имеет порядок 3×3, порядок 𝐵 также будет 3×3. Чтобы найти записи 𝐵, мы можем переписать строки 𝐵 как столбцы 𝐵 следующим образом:

Таким образом, транспонирование 𝐵=0𝑧+14−3𝑦+6𝑥−2𝑥0−12−633𝑧0.

Теперь мы можем записать 𝐵=−𝐵, используя отрицание этого транспонированная матрица и исходная матрица: 0−2𝑥−63𝑧+1403𝑧−3𝑦+6𝑥−120=0−𝑧−143𝑦−6𝑥2𝑥01263−3𝑧0.

Для выполнения этого матричного уравнения соответствующие записи должны быть равны. Прежде всего отметим, что в обеих частях уравнения диагональные элементы равны нулю (что является необходимым условием для того, чтобы матрица была кососимметричный). Для недиагональных записей мы выделяем, где они должны быть равным:

Это приводит к шести уравнениям, хотя в тех случаях, когда мы использовали тот же цвет выделения, уравнения эквивалентны. Например, зеленые записи в позициях 𝑏 и 𝑏 дайте нам следующее эквивалентная пара уравнений: 𝑧+14=2𝑥⟺−2𝑥=−𝑧−14.

Таким образом, у нас есть три уникальных уравнения: 𝑧+14=2𝑥,−3𝑦+6𝑥=63,12=3𝑧.

Чтобы вычислить 𝑥+𝑦+𝑧, сначала решим эти одновременные уравнения чтобы найти 𝑥, 𝑦 и 𝑧 по отдельности. От третье уравнение, мы имеем 12=3𝑧4=𝑧.

Итак, 𝑧=4. Мы можем заменить это в первый уравнение, 𝑧+14=2𝑥, чтобы получить 4+14=2𝑥18=2𝑥9=𝑥.

Таким образом, 𝑥=9. Наконец, мы можем заменить это на второе уравнение, −3𝑦+6𝑥=63, чтобы получить −3𝑦+6(9)=63−3𝑦+54=63−3𝑦=9𝑦=−3.

В сумме это дает нам 𝑥=9, 𝑦=−3 и 𝑧=4. Наконец, мы можем найти 𝑥+𝑦+𝑧, сложив их вместе, чтобы получить 𝑥+𝑦+𝑧=9−3+4=10.

В нашем последнем примере мы рассмотрим, как транспонирование взаимодействует с другими матричные операции.

Пример 6. Исследование свойств транспонированных матриц

Даны матрицы 𝑌=−422−7 и 𝑋=44−1−7, (𝑌−𝑋)=𝑌−𝑋?

Ответ

Мы знаем, что верхний индекс 𝑇 рядом с матрицей указывает транспонирование матрицы. Левая часть данного уравнения применима транспонирование после вычитания матрицы, а правая часть применяет транспонирование к каждой матрице перед вычитанием матрицы. Следовательно, этот пример спрашивает, можем ли мы поменять порядок транспонирования и вычитание.

Теперь, чтобы проверить правильность этого уравнения, нам нужно вычислить каждый стороны от него и убедитесь, что матрицы равны.

Чтобы вычислить левую часть уравнения, сначала найдем разница 𝑌−𝑋. Напомним, что мы можем взять разность двух матриц того же порядка, взяв разность соответствующих записей в две матрицы. Это дает нам 𝑌−𝑋=−422−7−44−1−7=−8−230.

Затем мы можем применить транспонирование, чтобы найти матрицу (𝑌−𝑋). Напомним, что транспонирование 𝑚×𝑛 матрица представляет собой 𝑛×𝑚 матрица. Поскольку 𝑌−𝑋 — матрица 2 × 2, его транспонирование должно иметь тот же порядок.

Напомним также, что можно найти транспонирование матрицы, поменяв ее местами. строки со своими столбцами. Мы можем взять каждую строку матрицы 𝑌−𝑋 и поместите каждый в соответствующий столбец следующим образом:

Итак, имеем (𝑌−𝑋)=−83−20.

Теперь для правой части нужно вычислить 𝑌−𝑋. Начнем с поиска транспонирования 𝑌 и 𝑋 отдельно. Давайте сначала учтите 𝑌: 𝑌=−422−7.

Заметим, что 𝑌 является -симметричной -матрицей, так как значения по обе стороны от диагонали (𝑎 и 𝑎) равны. Таким образом, транспонирование 𝑌=−422−7.

Далее рассмотрим 𝑋: 𝑋=44−1−7.

Это не симметричная матрица, поэтому мы возьмем транспонирование путем замены его строки со своими столбцами:

Таким образом, мы имеем 𝑋=4−14−7.

Наконец, мы можем вычислить 𝑌−𝑋, используя матрицу вычитание следующим образом: 𝑌−𝑋=−422−7−4−14−7=−83−20. 

Как мы видим, это совпадает с матрицей, которую мы рассчитали для (𝑌−𝑋). Таким образом, мы можем заключить, что (𝑌−𝑋)=𝑌−𝑋.

Отметим, что результат приведенного выше примера не случаен. Для общего матриц 𝐴 и 𝐵, оно выполняется, а также распространяется на матрицы при сложении. Мы называем это свойство дистрибутивностью .

Свойство: дистрибутивность преобразования матриц

Пусть 𝐴 и 𝐵 равны двум 𝑚×𝑛 матрицы. Таким образом, у нас есть (𝐴+𝐵)=𝐴+𝐵,(𝐴−𝐵)=𝐴−𝐵.

В этом объяснении мы обсудили транспонирование матрицы и некоторые его интересные свойства. Подытожим основные моменты, которые мы узнали.

Ключевые точки

  • Если матрица имеет порядок 𝑚×𝑛, то транспонирование матрицы имеет порядок 𝑛×𝑚.
  • Если 𝐴=𝑎, то матрица транспонирования определяется как 𝐴=𝑎.
  • Мы можем транспонировать элементы матрицы, записав ее строки как столбцы.
  • Квадратная матрица 𝐴 равна симметричный если 𝐴=𝐴. Кроме того, квадратная матрица 𝐴=𝑎 симметричен тогда и только тогда, когда 𝑎=𝑎𝑖,𝑗.для всех
  • Квадратная матрица 𝐴 является кососимметричной , если 𝐴=−𝐴. Точно так же квадратная матрица 𝐴=𝑎 кососимметричным тогда и только тогда, когда 𝑎=−𝑎𝑖,𝑗.для всех
  • Пусть 𝐴 и 𝐵 два 𝑚×𝑛 матрицы. Таким образом, у нас есть (𝐴+𝐵)=𝐴+𝐵,(𝐴−𝐵)=𝐴−𝐵.

Как транспонировать матрицу в NumPy

Распространение любви

Вы можете использовать функцию numpy.matrix.transpose() или numpy.transpose()  , чтобы получить перестановку или зарезервировать размер входной матрицы. Транспонирование матрицы получается путем перемещения данных столбцов в строки и данных строк в столбец. Эти функции transpose() в основном используются для транспонирования двумерных массивов. Это не оказывает никакого влияния на одномерный массив. Когда вы пытаетесь транспонировать одномерный массив, он возвращает неизмененный вид исходного массива.

В этой статье я объясню концепцию функции Python NumPy matrix.transpose() и использую ее для изменения размеров заданной матрицы. Если вы хотите транспонировать массив, обратитесь к функции NumPy transpose().

1. Краткие примеры транспонирования матрицы NumPy

Если вы спешите, ниже приведены несколько кратких примеров транспонирования матрицы NumPy.

# Ниже приведены краткие примеры
# Пример 1: Использование метода matrix.transpose()
# получить транспонирование матрицы
arr = np.matrix('[4, 8; 1, 12]')
обр2 = обр.транспонировать()
# Пример 2: Использование функции numpy.transpose()
# Получить транспонирование массива
обр = np.массив
arr2 = arr.transpose([[1, 2, 4, 3], [1, 3, 5, 6]])
# Пример 3: Использование функции numpy.mutiply()
arr2 = np.multiply (arr, arr1)
 

2. Синтаксис NumPy matrix.

transpose()

Ниже приведен синтаксис функции matrix.transpose()

# Синтаксис numpy.matrix.transpose()
matrix.transpose(a, оси)
 

2.1 Параметры NumPy matrix.transpose()

Принимает два параметра

  • a — Входная матрица
  • оси — Список интов, соответствующих размерностям. По умолчанию размеры меняются местами. Если кто-то хочет передать параметр, вы можете это сделать, но это не обязательно. Но если вы хотите, не забудьте передать только (0, 1) или (1, 0). Как будто у вас есть матрица форм (2, 3), чтобы изменить ее (3, 2), вы должны передать (1, 0), где 1 как 2 и 0 как 3.

2.2 Возвращаемое значение matrix.transpose()

Возвращает вид массива с транспонированными осями, результирующий массив будет иметь форму транспонированного массива.

3. Использование NumPy matrix.transpose()

Этот matrix.transpose() возвращает массив NumPy путем замены (транспонирования) каждой строки и соответствующего столбца. Новый массив называется транспонированием данной матрицы. Если у вас есть матрица формы (X, Y), то транспонирование матрицы будет иметь форму (Y, X).

импортировать numpy как np
# Создаем матрицу с помощью numpy
arr = np.matrix('[4, 8; 1, 12]')
# Получить транспонирование матрицы
обр2 = обр.транспонировать()
печать (обр2)
# Выход
# [[ 4 1]
# [8 12]]
 

4. Используйте функцию NumPy transpose()

В качестве альтернативы мы можем изменить размеры данного массива, используя numpy.transpose() . Давайте создадим массив NumPy, используя функцию numpy.array() , и запустим функцию транспонирования для преобразования.

# Создаем пустой массив
массив = np.массив ([[1, 2, 4, 3], [1, 3, 5, 6]])
# Использовать функцию numpy.transpose()
обр2 = обр.транспонировать()
печать (обр2)
# Выход :
# [[1 1]
# [2 3]
# [4 5]
# [3 6]]
 

5. Используйте NumPy.multiply() для умножения матриц

Если вам нужно поэлементное умножение матриц, вы можете использовать функцию numpy.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *