Как рассчитать регрессию в Excel: 3 метода с примерами и формулами

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

Многие ошибочно думают, что для регрессии нужны специализированные программы вроде Python или R. На самом деле, Excel справляется с задачей не хуже — главное знать, где искать нужные функции. В этой статье мы разберём три метода: ручной расчёт с формулами, использование надстройки «Пакет анализа» и построение линии тренда на графике. Вы сможете выбрать подходящий вариант в зависимости от объёма данных и требуемой точности.

Прежде чем приступить, убедитесь, что ваши данные подготовлены правильно: независимая переменная (X) и зависимая (Y) расположены в отдельных столбцах, а пустые ячейки и ошибки (#Н/Д, #ЗНАЧ!) устранены. Это критично — Excel игнорирует пустые ячейки при расчётах, что искажает результаты регрессии на 15–30%.

Метод 1: Ручной расчёт с формулами НАКЛОН и ОТРЕЗОК

Самый простой способ — использовать встроенные функции НАКЛОН и ОТРЕЗОК. Они возвращают коэффициенты линейной регрессии y = bx + a, где:

  • 📈 НАКЛОН — коэффициент b (угол наклона прямой), показывает, насколько изменится Y при увеличении X на 1.
  • 📍 ОТРЕЗОК — коэффициент a (свободный член), значение Y при X = 0.

Допустим, у вас в столбце A2:A10 значения X, а в B2:B10Y. Введите формулы:

=НАКЛОН(B2:B10; A2:A10)  // Коэффициент b

=ОТРЕЗОК(B2:B10; A2:A10) // Коэффициент a

☑️ Проверка перед расчётом

Выполнено: 0 / 4

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

=НАКЛОН(B2:B10; A2:A10)*X_новый + ОТРЕЗОК(B2:B10; A2:A10)
⚠️ Внимание: Если ваши данные нелинейны, этот метод даст неточные результаты. Для кривых зависимостей используйте ЛГРФПРИБЛ (логарифмическая регрессия) или ЭКСПОНЕНЦ (экспоненциальная).

Метод 2: Инструмент «Пакет анализа» (регрессия за 3 клика)

Для полноценного анализа с коэффициентом детерминации () и статистикой значимости включите надстройку «Пакет анализа»:

  1. Перейдите в Файл → Параметры → Надстройки.
  2. Внизу окна выберите Управление: Надстройки ExcelПерейти.
  3. Отметьте Пакет анализа и нажмите OK.

Теперь инструмент доступен в Данные → Анализ данных → Регрессия. Заполните поля:

  • 📊 Входной интервал Y — диапазон зависимой переменной (например, B2:B10).
  • 📉 Входной интервал X — диапазон независимой переменной (A2:A10).
  • 📌 Выходной интервал — укажите ячейку для результатов (например, D1).
  • 🔲 Отметьте Остатки и График остатков для визуализации ошибок.
📊 Какой метод регрессии вы используете чаще?
Ручные формулы
Пакет анализа
Линия тренда на графике
Другой инструмент

В результатах обратите внимание на:

ПараметрЧто означаетНормальное значение
R-квадратДоля вариации Y, объясняемая моделью0.7–1 (хорошая связь)
P-значениеСтатистическая значимость коэффициентов< 0.05 (значимо)
Стандартная ошибкаПогрешность коэффициентовЧем меньше, тем точнее
⚠️ Внимание: Если в выходных данных есть #Н/Д в столбце «Коэффициенты», проверьте, нет ли в исходных данных текста или ошибок. Excel автоматически исключает нечисловые ячейки, но не предупреждает об этом!

Метод 3: Линия тренда на графике (визуальный анализ)

Для быстрой оценки зависимости постройте точечную диаграмму:

  1. Выделите данные X и Y (например, A2:B10).
  2. Перейдите на вкладку Вставка → Вставить диаграмму → Точечная.
  3. Щёлкните правой кнопкой по любой точке → Добавить линию тренда.
  4. В настройках линии выберите Линейная и отметьте Показать уравнение на диаграмме.

На графике появится уравнение вида y = 2.5x + 10, где:

  • 🔢 2.5 — коэффициент НАКЛОН.
  • 🔢 10 — коэффициент ОТРЕЗОК.
  • 📊 R² = 0.95 — коэффициент детерминации (чем ближе к 1, тем точнее модель).

Этот метод подходит для презентаций, но имеет ограничения:

  • ❌ Нет детальной статистики (например, p-value).
  • ❌ Нельзя сохранить коэффициенты в таблицу автоматически.
  • ❌ Поддерживаются только 6 типов регрессии (линейная, полиномиальная, логарифмическая и др.).

Ошибки при расчёте регрессии в Excel и как их избежать

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

ОшибкаПричинаРешение
#ЧИСЛО! в НАКЛОН/ОТРЕЗОКДиапазоны X и Y разного размераПроверьте количество строк в обоих столбцах
#ДЕЛ/0! в «Пакете анализа»Все значения X одинаковыеДобавьте вариативность в данные
Низкое (< 0.5)Слабая связь между переменнымиПопробуйте нелинейную регрессию или добавьте факторы
Отрицательное Модель хуже, чем среднее значение YПроверьте данные на выбросы

Частая проблема — выбросы (экстремальные значения), которые искажают линию регрессии. Чтобы их обнаружить:

  1. Постройте график остатков (разница между реальными и предсказанными Y).
  2. Если точки образуют «веер» или выбиваются за пределы ±2σ, удалите их или используйте робустную регрессию (требует надстроек).
Как удалить выбросы автоматически?

Используйте функцию =КВАРТИЛЬ для расчёта межквартильного размаха (IQR). Формула для нижней границы: =КВАРТИЛЬ(диапазон;1) - 1.5*IQR, где IQR=КВАРТИЛЬ(диапазон;3)-КВАРТИЛЬ(диапазон;1). Удалите значения за пределами [Q1–1.5IQR; Q3+1.5IQR].

Продвинутые возможности: множественная регрессия

Если на Y влияет несколько переменных (X₁, X₂, ..., Xₙ), используйте множественную регрессию. В «Пакете анализа»:

  1. В поле Входной интервал X укажите все столбцы с независимыми переменными (например, A2:C10 для трёх факторов).
  2. Результаты будут включать коэффициенты для каждой переменной и их p-value.

Пример интерпретации выходных данных:

  • 📌 Коэффициенты: показывают силу влияния каждого X на Y (при фиксированных других переменных).
  • 📉 P-значение: если > 0.05, переменная статистически незначима — её можно исключить из модели.
  • 🔄 Множественный R: корреляция между наблюдаемыми и предсказанными Y (идеал — близко к 1).

Для автоматизации расчётов используйте ЛИНЕЙН — массивную функцию, которая возвращает статистику регрессии в виде таблицы. Пример:

=ЛИНЕЙН(B2:B10; A2:C10; ИСТИНА; ИСТИНА)
Примечание: вводите формулу как массивную (Ctrl+Shift+Enter в старых версиях Excel).

Автоматизация регрессии с помощью Power Query и VBA

Если вам нужно регулярно обновлять регрессионные модели, используйте:

  • 🔄 Power Query: для очистки данных и подготовки к анализу. Например, удаление дубликатов или замена пропусков на средние значения.
  • 🤖 VBA: для создания пользовательских функций. Пример кода для линейной регрессии:
    Function LinearRegression(Y_Range As Range, X_Range As Range, Optional X_New As Double) As Double
    

    Dim b As Double, a As Double

    b = Application.WorksheetFunction.Slope(Y_Range, X_Range)

    a = Application.WorksheetFunction.Intercept(Y_Range, X_Range)

    If IsMissing(X_New) Then

    LinearRegression = Array(b, a) ' Возвращает коэффициенты

    Else

    LinearRegression = b * X_New + a ' Возвращает прогноз

    End If

    End Function

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

  1. Нажмите Alt+F11, вставьте код в модуль.
  2. Вернитесь в Excel и введите:
    =LinearRegression(B2:B10; A2:A10; 5)

    для прогноза Y при X = 5.

⚠️ Внимание: VBA-макросы блокируются по умолчанию в Excel Online и мобильной версии. Для их работы нужна настольная версия Excel с включёнными макросами (Файл → Параметры → Центр управления безопасностью → Параметры центра управления безопасностью → Включить все макросы).

FAQ: Частые вопросы о регрессии в Excel

Можно ли сделать регрессию без «Пакет анализа»?

Да, используйте функции НАКЛОН, ОТРЕЗОК, ЛИНЕЙН или постройте линию тренда на графике. Однако без «Пакет анализа» вы не получите детальную статистику (например, p-value или доверительные интервалы).

Как интерпретировать отрицательный коэффициент НАКЛОН?

Отрицательный коэффициент означает обратную зависимость: при увеличении X значение Y уменьшается. Например, если НАКЛОН = -0.5, то при росте X на 1 единица Y снизится на 0.5.

Что делать, если очень низкий (< 0.3)?

Возможные причины и решения:

  • 🔍 Нелинейная зависимость: попробуйте полиномиальную или логарифмическую регрессию.
  • 🧹 Шумные данные: удалите выбросы или добавьте дополнительные переменные.
  • 🎯 Неправильная модель: проверьте гипотезу о связи между X и Y (возможно, её нет).

Как сохранить результаты регрессии для дальнейшего использования?

Скопируйте выходные данные «Пакет анализа» на новый лист и сохраните файл как .xlsx или .xlsm (если используете макросы). Для автоматизации экспорта используйте VBA:

Sub ExportRegression()

Sheets("Регрессия").Copy

ActiveWorkbook.SaveAs "Регрессия_" & Format(Date, "dd-mm-yy") & ".xlsx"

ActiveWorkbook.Close

End Sub

Можно ли сделать регрессию в Google Таблицах?

Да, в Google Sheets доступны аналогичные функции:

  • =SLOPE(Y_range; X_range) — аналог НАКЛОН.
  • =INTERCEPT(Y_range; X_range) — аналог ОТРЕЗОК.
  • =LINEST(Y_range; X_range) — аналог ЛИНЕЙН (вводится как массивная формула).

Однако «Пакет анализа» в Google Таблицах отсутствует — для детальной статистики используйте надстройки вроде Analysis ToolPak (доступна в меню Надстройки → Пакет анализа).