Как построить обратную матрицу в Excel: 3 рабочих метода с примерами

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

Многие пользователи сталкиваются с ошибками при попытке найти обратную матрицу — от банального #ЗНАЧ! до неверных размерностей. В этой статье мы разберём три надёжных метода: стандартную функцию МОБР, альтернативный подход с МУМНОЖ и даже ручной расчёт через алгебраические дополнения. Вы узнаете, как избежать типичных ошибок и когда обратная матрица вообще не существует.

Особое внимание уделим практическим примерам: от простых квадратных матриц 2×2 до сложных случаев с проверкой на вырожденность. А в конце статьи вас ждёт FAQ-блок с ответами на частые вопросы — например, почему Excel иногда отказывается считать обратную матрицу для корректных на первый взгляд данных.

Метод 1: Функция МОБР — классический способ

Самый простой и распространённый способ найти обратную матрицу в Excel — использовать встроенную функцию МОБР (или MINVERSE в английской версии). Она работает с квадратными матрицами (где число строк равно числу столбцов) и возвращает матрицу, умножение которой на исходную даёт единичную.

Чтобы применить МОБР, выполните следующие шаги:

  • 📌 Выделите на листе пустую область, размер которой совпадает с исходной матрицей (например, для матрицы 3×3 выделите диапазон 3×3).
  • 🔹 Введите формулу: =МОБР(A1:C3), где A1:C3 — адрес вашей матрицы.
  • 🔘 Нажмите Ctrl+Shift+Enter (это важно!), чтобы Excel обработал формулу как массивную.

Если всё сделано правильно, в выделенных ячейках появится обратная матрица. Обратите внимание: функция МОБР вернёт ошибку #ЧИСЛО!, если матрица вырожденная (её определитель равен нулю). В таких случаях обратная матрица не существует.

Метод 2: Ручное вычисление через алгебраические дополнения

Для тех, кто хочет разобраться в математике процесса или работает с версиями Excel без МОБР (например, в Excel Online с ограниченным функционалом), подойдёт метод алгебраических дополнений. Он сложнее, но даёт полное понимание механизма.

Алгоритм включает несколько этапов:

  1. Найдите определитель матрицы (МОПРЕД). Если он равен нулю — обратной матрицы нет.
  2. Постройте матрицу алгебраических дополнений для каждого элемента.
  3. Транспонируйте полученную матрицу (поменяйте строки и столбцы местами).
  4. Разделите каждый элемент транспонированной матрицы на определитель исходной.

На практике это выглядит так:

  • 🧮 Для матрицы 2×2 формула обратной матрицы упрощается:
    =1/МОПРЕД(A1:B2)*{B2, -A2; -B1, A1}

    Здесь A1:B2 — адрес исходной матрицы, а фигурные скобки обозначают ввод как массива.

  • 🔢 Для матриц 3×3 и больше процесс становится громоздким, но его можно автоматизировать с помощью промежуточных вычислений в отдельных ячейках.
Почему этот метод сложнее?

Алгебраические дополнения требуют вычисления миноров для каждого элемента матрицы, что для больших размерностей (например, 4×4) приводит к десяткам промежуточных операций. Кроме того, легко допустить ошибку при транспонировании или делении на определитель. Однако этот метод незаменим, если нужно понять внутреннюю логику или если МОБР недоступна.

Метод 3: Использование функции МУМНОЖ для проверки результата

После нахождения обратной матрицы её стоит проверить. Для этого умножьте исходную матрицу на обратную — в результате должна получиться единичная матрица (с единицами на главной диагонали и нулями в остальных ячейках). В Excel это делается функцией МУМНОЖ (или MMULT):

Пример проверки:

  1. Пусть исходная матрица в диапазоне A1:C3, а обратная — в E1:G3.
  2. Выделите пустой диапазон 3×3 (например, A5:C7).
  3. Введите формулу: =МУМНОЖ(A1:C3; E1:G3) и нажмите Ctrl+Shift+Enter.

Если в результате вы увидели единичную матрицу (с погрешностью до 1E-10 из-за округлений), значит, обратная матрица найдена верно. Отклонения больше 0.000001 говорят об ошибке в расчётах.

📊 Какой метод вычисления обратной матрицы используете чаще?
Функция МОБР
Алгебраические дополнения
Проверка через МУМНОЖ
Другой способ

Типичные ошибки и как их избежать

Даже опытные пользователи Excel иногда сталкиваются с проблемами при вычислении обратных матриц. Вот наиболее распространённые ошибки и способы их решения:

  • Ошибка #ЗНАЧ! — возникает, если вы забыли нажать Ctrl+Shift+Enter для массива. Всегда проверяйте, появились ли фигурные скобки {} вокруг формулы в строке ввода.
  • Ошибка #ЧИСЛО! — сигнализирует о вырожденной матрице (определитель = 0). Используйте МОПРЕД для предварительной проверки.
  • Неправильный размер диапазона — если выделить область больше или меньше исходной матрицы, Excel вернёт некорректный результат или ошибку.
  • Округление значений — обратные матрицы часто содержат дробные числа. Установите формат ячеек "Числовой" с достаточным количеством десятичных знаков (например, 10).

Убедиться, что матрица квадратная (строки = столбцы)

Проверить определитель функцией МОПРЕД (не должен быть 0)

Выделить пустой диапазон того же размера, что и исходная матрица

Использовать Ctrl+Shift+Enter для ввода массива

Проверить результат умножением на исходную матрицу (должна получиться единичная)

-->

Особое внимание уделите вырожденным матрицам. Например, если в матрице 3×3 одна строка является линейной комбинацией других, её определитель будет равен нулю, и МОБР не сработает. В таких случаях используйте метод псевдообратной матрицы (функция МОБР не подходит, но можно применить ТРАНСП и МУМНОЖ с дополнительными вычислениями).

Практический пример: обратная матрица 3×3

Рассмотрим пошаговое вычисление обратной матрицы для следующего примера:

Исходная матрица (A)ЯчейкаЗначение
A =A14
A27
A32
B11
B20
B33
C15
C28
C36

Шаги решения:

  1. Проверяем определитель: =МОПРЕД(A1:C3) → результат -36 (не ноль, обратная матрица существует).
  2. Выделяем диапазон E1:G3 (пустой блок 3×3).
  3. Вводим формулу: =МОБР(A1:C3) и подтверждаем Ctrl+Shift+Enter.

Результат (обратная матрица A⁻¹):

Обратная матрицаE1F1G1
E-0.2220.3890.194
F0.056-0.1110.083
G0.1390.056-0.194

Критическая деталь: значения в обратной матрице часто имеют много знаков после запятой. Если вы видите в ячейках округлённые числа (например, 0.22 вместо 0.222222...), увеличьте количество десятичных знаков в формате ячеек, иначе проверка через МУМНОЖ может дать ложный результат.

Когда обратная матрица не существует: что делать?

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

  • 🔄 Псевдообратная матрица Мура-Пенроуза — обобщение понятия обратной матрицы для вырожденных случаев. В Excel её можно вычислить через комбинацию ТРАНСП, МУМНОЖ и МОБР для матрицы AᵀA или AAᵀ.
  • 📉 Метод наименьших квадратов — если вам нужно решить систему уравнений Ax = b с вырожденной матрицей A, используйте формулу: =МУМНОЖ(МУМНОЖ(МОБР(МУМНОЖ(ТРАНСП(A1:C3); A1:C3))); ТРАНСП(A1:C3)); b1:b3).
  • 🔍 Регуляризация — добавление небольшой константы к диагональным элементам матрицы перед нахождением обратной (метод Тихонова).

Пример вычисления псевдообратной матрицы для вырожденной матрицы 2×3:

  1. Вычислите AᵀA: =МУМНОЖ(ТРАНСП(A1:C2); A1:C2).
  2. Найдите обратную к AᵀA: =МОБР(МУМНОЖ(ТРАНСП(A1:C2); A1:C2)).
  3. Умножьте на Aᵀ: =МУМНОЖ(МОБР(МУМНОЖ(ТРАНСП(A1:C2); A1:C2)); ТРАНСП(A1:C2)).

Автоматизация: VBA-скрипт для обратной матрицы

Если вам часто приходится работать с обратными матрицами, можно создать пользовательскую функцию на VBA, которая будет возвращать результат без необходимости вручную выделять диапазоны и нажимать Ctrl+Shift+Enter. Вот пример кода:

Function InverseMatrix(rng As Range) As Variant

Dim arr() As Variant

Dim result() As Variant

Dim i As Long, j As Long

' Проверка на квадратность

If rng.Rows.Count <> rng.Columns.Count Then

InverseMatrix = "Ошибка: матрица не квадратная"

Exit Function

End If

' Вычисление обратной матрицы

On Error Resume Next

arr = rng.Value

result = Application.WorksheetFunction.MInverse(arr)

If Err.Number <> 0 Then

InverseMatrix = "Ошибка: матрица вырожденная"

Exit Function

End If

On Error GoTo 0

InverseMatrix = result

End Function

Чтобы использовать эту функцию:

  1. Нажмите Alt+F11, чтобы открыть редактор VBA.
  2. Вставьте код в новый модуль (Insert → Module).
  3. Сохраните файл как .xlsm (с поддержкой макросов).
  4. Теперь в Excel можно использовать =InverseMatrix(A1:C3) как обычную формулу (без Ctrl+Shift+Enter).

Преимущества этого подхода:

  • ✅ Нет нужды помнить о массивах — функция сама возвращает матрицу нужного размера.
  • ✅ Автоматическая проверка на вырожденность и квадратность.
  • ✅ Можно интегрировать в более сложные расчёты.

FAQ: Ответы на частые вопросы

Почему Excel выдаёт ошибку #ЧИСЛО! при использовании МОБР?

Ошибка #ЧИСЛО! означает, что матрица вырожденная (её определитель равен нулю). Это происходит, если:

  • Строки или столбцы матрицы линейно зависимы (например, одна строка является суммой других).
  • Матрица содержит нулевую строку или столбец.
  • Числа в матрице слишком малы или велики, что приводит к ошибкам округления.

Решение: проверьте матрицу на вырожденность с помощью МОПРЕД или используйте псевдообратную матрицу.

Можно ли найти обратную матрицу для неквадратной матрицы?

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

  • Левую псевдообратную матрицу: (AᵀA)⁻¹Aᵀ (для матриц с числом строк > числа столбцов).
  • Правую псевдообратную матрицу: Aᵀ(AAᵀ)⁻¹ (для матриц с числом столбцов > числа строк).
Как проверить, что обратная матрица найдена верно?

Умножьте исходную матрицу на обратную с помощью МУМНОЖ. В результате должна получиться единичная матрица (с единицами на диагонали и нулями в остальных ячейках). Допускаются минимальные отклонения (порядка 1E-10) из-за округлений.

Пример формулы для проверки: =МУМНОЖ(A1:C3; E1:G3), где A1:C3 — исходная матрица, а E1:G3 — обратная.

Что делать, если в обратной матрице слишком много знаков после запятой?

Это нормально: обратные матрицы часто содержат дробные числа с большой точностью. Чтобы упростить восприятие:

  • Установите формат ячеек "Числовой" с фиксированным количеством десятичных знаков (например, 4).
  • Используйте функцию ОКРУГЛ, если погрешность некритична: =ОКРУГЛ(МОБР(A1:C3); 4).
  • Для визуального контроля отобразите матрицу в экспоненциальном формате (Настройки → Формат ячеек → Экспоненциальный).
Можно ли найти обратную матрицу в Google Sheets?

Да, в Google Таблицах для этого используется функция MINVERSE (аналог МОБР в Excel). Синтаксис идентичный:

  1. Выделите диапазон для результата.
  2. Введите =MINVERSE(A1:C3).
  3. Нажмите Ctrl+Shift+Enter (или просто Enter в новой версии Google Sheets, где массивы обрабатываются автоматически).

Ограничение: в бесплатной версии Google Sheets максимальный размер матрицы — 10×10.