Содержание
- Выполнение расчетов
- Расчет определителя
- Расчет обратной матрицы
- Вопросы и ответы
Приложение Excel выполняет целый ряд вычислений, связанных с матричными данными. Программа обрабатывает их, как диапазон ячеек, применяя к ним формулы массива. Одно из таких действий – это нахождение обратной матрицы. Давайте выясним, что представляет собой алгоритм данной процедуры.
Выполнение расчетов
Вычисление обратной матрицы в Excel возможно только в том случае, если первичная матрица является квадратной, то есть количество строк и столбцов в ней совпадает. Кроме того, её определитель не должен быть равен нулю. Для вычисления применяется функция массива МОБР. Давайте на простейшем примере рассмотрим подобное вычисление.
Расчет определителя
Прежде всего, вычислим определитель, чтобы понять, имеет первичный диапазон обратную матрицу или нет. Это значение рассчитывается при помощи функции МОПРЕД.
- Выделяем любую пустую ячейку на листе, куда будут выводиться результаты вычислений. Жмем на кнопку «Вставить функцию», размещенную около строки формул.
- Запускается Мастер функций. В перечне записей, который он представляет, ищем «МОПРЕД», выделяем этот элемент и жмем на кнопку «OK».
- Открывается окно аргументов. Ставим курсор в поле «Массив». Выделяем весь диапазон ячеек, в котором расположена матрица. После того, как его адрес появился в поле, жмем на кнопку «OK».
- Программа производит расчет определителя. Как видим, для нашего конкретного случая он равен – 59, то есть не тождественен нулю. Это позволяет сказать, что у данной матрицы существует обратная.
Расчет обратной матрицы
Теперь можно преступить к непосредственному расчету обратной матрицы.
- Выделяем ячейку, которая должна стать верхней левой ячейкой обратной матрицы. Переходим в Мастер функций, кликнув по значку слева от строки формул.
- В открывшемся списке выбираем функцию МОБР. Жмем на кнопку «OK».
- В поле «Массив», открывшегося окна аргументов функции, устанавливаем курсор. Выделяем весь первичный диапазон. После появления его адреса в поле, жмем на кнопку «OK».
- Как видим, появилось значение только в одной ячейке, в которой была формула. Но нам нужна полноценная обратная функция, поэтому следует скопировать формулу в другие ячейки. Выделяем диапазон, равнозначный по горизонтали и вертикали исходному массиву данных. Жмем на функциональную клавишу F2, а затем набираем комбинацию Ctrl+Shift+Enter. Именно последняя комбинация предназначена для обработки массивов.
- Как видим, после этих действий обратная матрица вычислена в выделенных ячейках.
На этом расчет можно считать завершенным.
Если вы производите расчет определителя и обратной матрицы только при помощи ручки и бумаги, то над этим вычислением, в случае работы над сложным примером, можно ломать голову очень долго. Но, как видим, в программе Эксель данные вычисления производятся очень быстро, независимо от сложности поставленной задачи. Для человека, который знаком с алгоритмом подобных расчетов в этом приложении, все вычисление сводится к чисто механическим действиям.
Еще статьи по данной теме:
Помогла ли Вам статья?
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше
Функция МОБР возвращает обратную матрицу для матрицы, храняной в массиве.
Примечание: Если у вас установлена текущая версия Microsoft 365, можно просто ввести формулу в верхней левой ячейке диапазона вывода и нажать клавишу ВВОД, чтобы подтвердить использование формулы динамического массива. Иначе формулу необходимо вводить с использованием прежней версии массива, выбрав диапазон вывода, введя формулу в левой верхней ячейке диапазона и нажав клавиши CTRL+SHIFT+ВВОД для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
Синтаксис
МОБР(массив)
Аргументы функции МОБР описаны ниже.
-
Массива Обязательный. Числовой массив с равным количеством строк и столбцов.
Замечания
-
Массив может быть задан как диапазон ячеек, например A1:C3 как массив констант, например {1;2;3: 4;5;6: 7;8;9} или как имя диапазона или массива.
-
Если какие-либо ячейки в массиве пустые или содержат текст, функции МОБР возвращают #VALUE! ошибку «#ВЫЧИС!».
-
МоБР также возвращает #VALUE! если массив не имеет равного числа строк и столбцов.
-
Обратные матрицы, такие как определители, обычно используются для решения систем математических уравнений с несколькими переменными. Произведением матрицы и обратной является матрица удостоверений — квадратный массив, в котором диагональные значения равны 1, а все остальные — 0.
-
В качестве примера вычисления обратной матрицы, рассмотрим массив из двух строк и двух столбцов A1:B2, который содержит буквы a, b, c и d, представляющие любые четыре числа. В таблице приведена обратная матрица для массива A1:B2.
Столбец A |
Столбец B |
|
---|---|---|
Строка 1 |
d/(a*d-b*c) |
b/(b*c-a*d) |
Строка 2 |
c/(b*c-a*d) |
a/(a*d-b*c) |
-
Функция МОБР производит вычисления с точностью до 16 значащих цифр, что может привести к незначительным ошибкам округления.
-
Некоторые квадратные матрицы невозможно инвертировать и возвращают #NUM! в функции МОБР. Определител непревратимой матрицы 0.
Примеры
Чтобы указанные выше формулы вычислялись правильно, нужно вводить их в виде формул массивов. После ввода формулы нажмите ввод, если у вас есть текущая Microsoft 365 подписка. в противном случае нажмите CTRL+SHIFT+ВВОД. Если формула не будет введена как формула массива, возвращается единственный результат.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Нужна дополнительная помощь?
Excel обладает мощным инструментарием, позволяющим выполнять множество математических, статистических, логических и прочих задач. В программе также можно выполнить такое действие, как нахождение обратной матрицы. Ниже мы на практическом примере рассмотрим, как именно это сделать.
Примечание: Найти обратную матрицу можно только при условии, что исходная является квадратной (количество столбцов и строк одинаковое). К тому же, ее определитель не должен равняться цифре 0.
Этап 1. Вычисляем определитель
В программе данное действие выполняется с помощью функции МОПРЕД.
- Переходим в свободную ячейку, в которой планируем производить расчеты, после чего кликаем по кнопке “Вставить функцию” (fx) слева от строки формул.
- В открывшемся окне вставки функций выбираем категорию “Математические”, в которой кликаем по оператору “МОПРЕД”, затем – по кнопке OK.
- В следующем окне нужно заполнить единственный аргумент функции – “Массив”, в значении которого указываем координаты нашей матрицы. Сделать это можно вручную, прописав адреса ячеек, используя клавиши клавиатуры. Либо можно сначала кликнуть внутри области ввода информации, затем зажав левую кнопку мыши выделить диапазон ячеек непосредственно в самой таблице. Когда все готово, нажимаем кнопку OK.
- В выбранной ячейке отобразился результат, а именно, определитель матрицы. С учетом наших данных получилось число 157894, что значит, что у нашей матрицы обратная матрица существует, так как определитель не равен нулю.
Этап 2. Находим обратную матрицу
Итак, после того, как мы вычислили, что определитель матрицы не равен нулю, можно приступить к нахождению обратной.
- Встаем в ячейку, которая станет самым верхним левым элементом новой обратной матрицы. Заходим в окно Вставки функции, нажав на соответствующую кнопку.
- В категории “Математические” выбираем функцию “МОБР”, после чего щелкаем по кнопке OK.
- Аналогично заполнению значения аргумента “Массив” для функции МОПРЕД, рассмотренной в первом разделе, указываем координаты первичной матрицы, после чего нажимаем OK.
- Получаем требуемый результат в выбранной ячейке.
- Чтобы скопировать функцию в другие ячейки, выделяем область, которая совпадает по количеству столбцов и строк с начальной матрицей. Затем нажимаем клавишу F2 на клавиатуре, после чего жмем комбинацию Ctrl+Shift+Enter.
- Все готово. В результате выполненных действий нам удалось найти обратную матрицу.
Заключение
Нахождение обратной матрицы – не такая распространенная математическая задача, как, например, сложение, вычитание, умножение, деление, расчеты с процентами и т.д. Но, если все же возникнет такая потребность, вовсе необязательно делать это вручную на листке бумаги, ведь Эксель позволяет быстро и безошибочно справиться с этой задачей.
Для вычисления обратной матрицы в MS EXCEL существует специальная функция
МОБР()
или англ.
MINVERSE
.
Понятие обратной матрицы определено только для квадратных матриц, определитель которых отличен от нуля.
СОВЕТ
: О нахождении определителя матрицы читайте статью
Вычисление определителя матрицы в MS EXCEL
Матрица А
-1
называется обратной для исходной матрицы А порядка n, если
справедливы равенства
А
-1
*А=Е и А*А
-1
=Е, где Е единичная матрица порядка n.
Для вычисления обратной матрицы в MS EXCEL существует специальная функция
МОБР()
.
Если элементы исходной матрицы 2 х 2 расположены в диапазоне
А8:В9
, то для получения
транспонированной матрицы
нужно (см.
файл примера
):
-
выделить диапазон 2 х 2, который не пересекается с исходным диапазоном
А8:В9
,
например,
Е8:F9
-
в
Cтроке формул
ввести формулу
=
МОБР
(A8:B9)
и нажать комбинацию клавиш
CTRL+SHIFT+ENTER
, т.е. нужно ввести ее какформулу массива
(формулу можно ввести прямо в ячейку, предварительно нажав клавишу
F2
)
Если матрица большей размерности, то перед вводом формулы нужно выделить соответственно больший диапазон ячеек.
Массив может быть задан не только как интервал ячеек, например
A8:B9
, но и как
массив констант
, например
=МОБР({5;4: 3;2})
. Запись с использованием массива констант позволяет не указывать элементы в отдельных ячейках, а разместить их в ячейке вместе с функцией. Массив в этом случае указывается по строкам: например, сначала первая строка 5;4, затем через двоеточие записывается следующая строка 3;2. Элементы отделяются точкой с запятой.
Ссылка на массив также может быть указана как ссылка на
именованный диапазон
.
Некоторые квадратные матрицы не могут быть обращены: в таких случаях функция
МОБР()
возвращает значение ошибки #ЧИСЛО!. Матрицы не могут быть обращены, у которых определитель равен 0.
Если функция
МОБР()
вернула значение ошибки #ЗНАЧ!, то либо число строк в массиве не равно числу столбцов, либо какая-либо из ячеек в массиве пуста или содержит текст. Т.е. функция
МОБР()
пустую ячейку воспринимает не как содержащую 0 (как например, это делает
СУММ()
), а как ошибочное значение.
Вычисление обратной матрицы с помощью матрицы из алгебраических дополнений
СОВЕТ
: Этот раздел стоит читать только продвинутым пользователям MS EXCEL. Кроме того материал представляет только академический интерес, т.к. есть функция
МОБР()
.
В
файле примера
приведен расчет обратной матрицы 3-го порядка через матрицу алгебраических дополнений.
Порядок действий при вычислении обратной матрицы:
-
Вычисляем определитель
матрицы
А
(далее — Det(A)) и убеждаемся, что он отличен от нуля (в противном случае матрица
А
необратима) - Строим матрицу из алгебраических дополнений элементов исходной матрицы
-
Транспонируем матрицу
из алгебраических дополнений
-
Умножаем каждый элемент транспонированной матрицы
из алгебраических дополнений на 1/Det(A) и получаем обратную матрицу
В качестве проверки можно
перемножить исходную и обратную матрицы
. В результате должна получиться единичная матрица.
Под матрицей подразумевается набор ячеек, расположенных непосредственно друг возле друга и которые образуют вместе прямоугольник. Не требуется особых навыков, чтобы выполнять различные действия с матрицей, достаточно тех же, какие используются во время работы с классическим диапазоном.
Каждая матрица имеет свой адрес, записывающийся аналогичным диапазону способом. Первая составная часть – первая ячейка диапазона (расположенная в верхнем левом углу), а второй – последняя ячейка, которая находится в нижнем правом углу.
Содержание
- Формулы массива
- Что можно делать с матрицами
- Транспонирование
- Сложение
- Умножение
- Обратная матрица
- Поиск определителя матрицы
- Несколько примеров
- Умножение и деление
- Метод 1
- Метод 2
- Сложение и вычитание
- Метод 1
- Метод 2
- Пример транспонирования матрицы
- Поиск обратной матрицы
- Выводы
Формулы массива
В подавляющем количестве задач при работе с массивами (а матрицы и являются таковыми) используются формулы соответствующего типа. Базовое их отличие от обычных заключается в том, что последние выводят всего одно значение. Для применения формулы массива необходимо осуществить несколько действий:
- Выделить набор ячеек, где будут выводиться значения.
- Непосредственно введение формулы.
- Нажатие последовательности клавиш Ctrl + Shift + Ввод.
После осуществления этих простых действий в поле ввода отображается формула массива. Ее можно отличить от обычной по фигурным скобкам.
Для редактирования, удаления формул массива, надо выделить требуемый диапазон и сделать то, что нужно. Чтобы редактировать матрицу, нужно использовать ту же комбинацию, что и для ее создания. При этом нет возможности редактировать отдельный элемент массива.
Что можно делать с матрицами
В целом, есть огромное количество действий, применение которых возможно для матриц. Давайте каждое из них рассмотрим более подробно.
Транспонирование
Многие люди не понимают значения этого термина. Представьте, что вам нужно поменять строки и колонки местами. Вот это действие и называется транспонированием.
Перед тем, как это осуществить, необходимо выделить отдельную область, которая имеет такое же количество строчек, сколько столбцов есть у исходной матрицы и такое же количество столбцов. Чтобы более наглядно понять, как это работает, посмотрите на этот скриншот.
Далее есть несколько методов, как можно осуществить транспонирование.
Первый способ следующий. Для начала нужно выделить матрицу, после чего скопировать ее. Далее выделяется диапазон ячеек, куда должен быть вставлен транспонированный диапазон. Далее открывается окно «Специальная вставка».
Там есть множество операций, но нам нужно найти радиокнопку «Транспонировать». После совершения этого действия нужно подтвердить его нажатием клавиши ОК.
Есть еще один способ, с помощью которого можно транспонировать матрицу. Сперва надо выделить ячейку, расположенную в верхнем левом углу диапазона, отведенного под транспонированную матрицу. Далее открывается диалоговое окно с функциями, где есть функция ТРАНСП. Ниже в примере вы более подробно узнаете, как это сделать. В качестве параметра функции используется диапазон, соответствующий изначальной матрице.
После нажатия кнопки ОК сначала будет показано, что вы допустили ошибку. Ничего в этом страшного нет. Все потому, что вставленная нами функция не определена, как формула массива. Поэтому нам нужно совершить такие действия:
- Выделить набор ячеек, отведенных под транспонированную матрицу.
- Нажать клавишу F2.
- Нажать на горячие клавиши Ctrl + Shift + Enter.
Главное достоинство метода заключается в способности транспонированной матрицы сразу корректировать содержащуюся в ней информацию, как только вносятся данные в изначальную. Поэтому рекомендуется использовать именно данный способ.
Сложение
Эта операция возможна лишь применительно к тем диапазонам, количество элементов которых такое же самое. Проще говоря, у каждой из матриц, с которыми пользователь собирается работать, должны быть одинаковые размеры. И приводим скриншот для наглядности.
В матрице, которая должна получиться, нужно выделить первую ячейку и ввести такую формулу.
=Первый элемент первой матрицы + Первый элемент второй матрицы
Далее подтверждаем ввод формулы с помощью клавиши Enter и используем автозаполнение (квадратик в правом нижнем углу), чтобы скопировать все значения на новую матрицу.
Умножение
Предположим, у нас есть такая таблица, которую следует умножить на 12.
Догадливый читатель может легко понять, что метод очень похож на предыдущий. То есть, каждая из ячеек матрицы 1 должна умножаться на 12, чтобы в итоговой матрице каждая ячейка содержала значение, умноженное на этот коэффициент.
При этом важно указывать абсолютные ссылки на ячейки.
Итого, получится такая формула.
=A1*$E$3
Дальше методика аналогична предыдущей. Нужно это значение растянуть на необходимое количество ячеек.
Предположим, что необходимо перемножить матрицы между собой. Но есть лишь одно условие, при котором это возможно. Надо, чтобы количество столбцов и строк у двух диапазонов было зеркально одинаковое. То есть, сколько столбцов, столько и строк.
Чтобы было более удобно, нами выделен диапазон с результирующей матрицей. Надо переместить курсор на ячейку в верхнем левом углу и ввести такую формулу =МУМНОЖ(А9:С13;Е9:H11). Не стоит забыть нажать Ctrl + Shift + Enter.
Обратная матрица
Если наш диапазон имеет квадратную форму (то есть, количество ячеек по горизонтали и вертикали одинаковое), то тогда получится найти обратную матрицу, если в этом есть такая необходимость. Ее величина будет аналогичной исходной. Для этого используется функция МОБР.
Для начала следует выделить первую ячейку матрицы, в какую будет вставляться обратная. Туда вводится формула =МОБР(A1:A4). В аргументе указывается диапазон, для какого нам надо создать обратную матрицу. Осталось только нажать Ctrl + Shift + Enter, и готово.
Поиск определителя матрицы
Под определителем подразумевается число, находящееся матрицы квадратной формы. Чтобы осуществить поиск определителя матрицы, существует функция – МОПРЕД.
Для начала ставится курсор в какой-угодно ячейке. Далее мы вводим =МОПРЕД(A1:D4)
Несколько примеров
Давайте для наглядности рассмотрим некоторые примеры операций, которые можно осуществлять с матрицами в Excel.
Умножение и деление
Метод 1
Предположим, у нас есть матрица A, имеющая три ячейки в высоту и четыре – в ширину. Также есть число k, которое записывается в другой ячейке. После выполнения операции умножения матрицы на число появится диапазон значений, имеющий аналогичные размеры, но каждая ее часть умножается на k.
Диапазон B3:E5 – это исходная матрица, которая будет умножаться на число k, которое в свою очередь расположено в ячейке H4. Результирующая матрица будет находиться в диапазоне K3:N5. Исходная матрица будет называться A, а результирующая – B. Последняя образуется путем умножения матрицы А на число k.
Далее вводится =B3*$H$4 в ячейку K3, где В3 — элемент A11 матрицы А.
Не стоит забывать о том, ячейку H4, где указано число k необходимо вводить в формулу с помощью абсолютной ссылки. Иначе значение будет изменяться при копировании массива, и результирующая матрица потеряет работоспособность.
Далее маркер автозаполнения (тот самый квадратик в правом нижнем углу) используется для того, чтобы скопировать значение, полученное в ячейке K3, во все другие ячейки этого диапазона.
Вот у нас и получилось умножить матрицу A на определенное число и получить на выходе матрицу B.
Деление осуществляется аналогичным образом. Только вводить нужно формулу деления. В нашем случае это =B3/$H$4.
Метод 2
Итак, основное отличие этого метода в том, в качетве результата выдается массив данных, поэтому нужно применить формулу массива, чтобы заполнить весь набор ячеек.
Необходимо выделить результирующий диапазон, ввести знак равно (=), выделить набор ячеек, с соответствующими первой матрице размерами, нажать на звездочку. Далее выделяем ячейку с числом k. Ну и чтобы подтвердить свои действия, надо нажать на вышеуказанную комбинацию клавиш. Ура, весь диапазон заполняется.
Деление осуществляется аналогичным образом, только знак * нужно заменить на /.
Сложение и вычитание
Давайте опишем несколько практических примеров использования методов сложения и вычитания на практике.
Метод 1
Не стоит забывать, что возможно сложение лишь тех матриц, размеры которых одинаковые. В результирующем диапазоне все ячейки заполняются значением, являющим собой сумму аналогичных ячеек исходных матриц.
Предположим, у нас есть две матрицы, имеющие размеры 3х4. Чтобы вычислить сумму, следет в ячейку N3 вставить такую формулу:
=B3+H3
Тут каждый элемент являет собой первую ячейку матриц, которые мы собрались складывать. Важно, чтобы ссылки были относительными, поскольку если использовать абсолютные, не будут отображаться правильные данные.
Далее, аналогично умножению, с помощью маркера автозаполнения распространяем формулу на все ячейки результирующей матрицы.
Вычитание осуществляется аналогично, за тем лишь исключением, что используется знак вычитания (-), а не сложения.
Метод 2
Аналогично методу сложения и вычитание двух матриц, этот способ подразумевает использование формулы массива. Следовательно, в качестве ее результата будет выдаваться сразу набор значений. Поэтому нельзя редактировать или удалять какие-то элементы.
Сперва надо выделить диапазон, отделенный под результирующую матрицу, а потом нажать на «=». Затем надо указать первый параметр формулы в виде диапазона матрицы А, нажать на знак + и записать второй параметр в виде диапазона, соответствующему матрице B. Подтверждаем свои действия нажатием комбинации Ctrl + Shift + Enter. Все, теперь вся результирующая матрица заполнена значениями.
Пример транспонирования матрицы
Допустим, нам надо создать матрицу АТ из матрицы А, которая у нас есть изначально методом транспонирования. Последняя имеет, уже по традиции, размеры 3х4. Для этого будем использовать функцию =ТРАНСП().
Выделяем диапазон для ячеек матрицы АТ.
Для этого надо перейти на вкладку «Формулы», где выбрать опцию «Вставить функцию», там найти категорию «Ссылки и массивы» и найти функцию ТРАНСП. После этого свои действия подтверждаются кнопкой ОК.
Далее переходим в окно «Аргументы функции», где вводится диапазон B3:E5, который повторяет матрицу А. Далее надо нажать Shift + Ctrl, после чего кликнуть «ОК».
Важно. Нужно не лениться нажимать эти горячие клавиши, потому что в ином случае будет рассчитано только значение первой ячейки диапазона матрицы АТ.
В результате, у нас получается такая транспонированная таблица, которая изменяет свои значения вслед за исходной.
Поиск обратной матрицы
Предположим, у нас есть матрица А, которая имеет размеры 3х3 ячеек. Мы знаем, что для поиска обратной матрицы необходимо использовать функцию =МОБР().
Теперь опишем, как это делать на практике. Сначала необходимо выделить диапазон G3:I5 (там будет располагаться обратная матрица). Необходимо найти на вкладке «Формулы» пункт «Вставить функцию».
Откроется диалог «Вставка функции», где нужно выбрать категорию «Математические». И там в перечне будет функция МОБР. После того, как мы ее выберем, нужно нажать на клавишу ОК. Далее появляется диалоговое окно «Аргументы функции», в котором записываем диапазон B3:D5, который соответствует матрице А. Далее действия аналогичные транспонированию. Нужно нажать на комбинацию клавиш Shift + Ctrl и нажать ОК.
Выводы
Мы разобрали некоторые примеры, как можно работать с матрицами в Excel, а также описали теорию. Оказывается, что это не так страшно, как может показаться на первый взгляд, не так ли? Это только звучит непонятно, но на деле с матрицами среднестатистическому пользователю приходится иметь дело каждый день. Они могут использоваться почти для любой таблицы, где есть сравнительно небольшое количество данных. И теперь вы знаете, как можно себе упростить жизнь в работе с ними.
Оцените качество статьи. Нам важно ваше мнение: