Натуральный логарифм в Excel: функции LN и LOG, примеры расчётов

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

В этой статье вы узнаете, как вычислить натуральный логарифм в Excel с помощью функции LN, чем он отличается от LOG, и как избежать типичных ошибок. Мы разберём практические примеры — от простых расчётов до сложных формул с массивами данных. А для тех, кто работает с большими таблицами, покажем, как автоматизировать процесс с помощью динамических массивов (доступно в Excel 365 и Excel 2021).

Если вы никогда не сталкивались с логарифмами, не переживайте: мы объясним всё простым языком. Если же вы опытный пользователь — найдёте здесь нюансы, о которых не пишут в стандартных руководствах. Например, как рассчитать натуральный логарифм для отрицательных чисел через комплексные функции (только в Excel 2013+) или почему иногда LN возвращает ошибку #ЧИСЛО! даже для корректных данных.

Чем натуральный логарифм отличается от десятичного

Прежде чем переходить к формулам, важно понять разницу между двумя основными типами логарифмов в Excel:

  • 🔹 Натуральный логарифм (LN) — это логарифм по основанию e (число Эйлера, ≈2.71828). Используется в высшей математике, физике и финансовых моделях.
  • 🔹 Десятичный логарифм (LOG10 или LOG без второго аргумента) — это логарифм по основанию 10. Чаще применяется в инженерии и повседневных расчётах.

В Excel для натурального логарифма есть отдельная функция LN, а для десятичного — LOG10. Однако функция LOG универсальна: если указать только один аргумент, она вернёт десятичный логарифм, а если добавить второй аргумент (основание), то рассчитает логарифм по любому основанию. Например:

=LOG(100;10)  // Вернёт 2 (десятичный логарифм)

=LOG(100;2.718) // Вернёт ≈4.605 (натуральный логарифм, аналогично LN)

Почему это важно? Потому что ошибка в выборе функции может исказить результаты. Например, при расчёте процентной доходности инвестиций по формуле непрерывного начисления процентов используется именно LN, а не LOG10. Подменив одну функцию другой, вы получите неверные данные для анализа.

📊 Как часто вы используете логарифмы в Excel?
Ежедневно
Редко, по работе
Только для учёбы
Никогда не пользовался

Функция LN: синтаксис и базовые примеры

Функция LN в Excel имеет простейший синтаксис:

=LN(число)

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

Примеры использования:

  • 📌 =LN(1) → вернёт 0 (потому что e⁰ = 1).
  • 📌 =LN(2.718) → вернёт ≈1 (так как e¹ ≈ 2.718).
  • 📌 =LN(100) → вернёт ≈4.605.

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

☑️ Проверка перед использованием LN

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

Практические задачи: где применяется LN в Excel

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

1. Финансовый анализ. Формула непрерывного начисления процентов:

=P  EXP(r  t)

где P — начальная сумма, r — процентная ставка, t — время. Чтобы найти r или t, потребуется LN. Например, расчёт времени удвоения капитала:

=LN(2) / ставка

2. Статистика. Логарифмическое преобразование данных помогает "выровнять" распределение при анализе временных рядов или построении регрессионных моделей. Например, для линеаризации экспоненциальной зависимости:

=ЛИНЕЙН(LN(y); x; ИСТИНА; ИСТИНА)

3. Инженерия. Расчёт затухания сигналов, тепловых процессов или химических реакций часто требует логарифмических функций. Например, формула для уровня звука в децибелах:

=20 * LN(амплитуда / опорное_значение)
ЗадачаФормула с LNПример
Процентная доходность=LN(конечная_сумма/начальная_сумма)/период=LN(1500/1000)/5 → 8.1% годовых
Время удвоения инвестиций=LN(2)/ставка=LN(2)/0.07 → ~10 лет при 7% ставке
Экспоненциальная регрессия=НАКЛОН(LN(y); x)Находит коэффициент роста в модели y = aebx
Децибелы (звук)=20*LN(амплитуда)=20*LN(10) ≈ 46.05 дБ

Ошибки при работе с LN и как их исправить

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

⚠️ Внимание: Если вы видите ошибку #ЗНАЧ! вместо #ЧИСЛО!, проблема не в аргументе функции, а в формате ячейки. Скорее всего, вы передаёте в LN текст вместо числа. Проверьте формат с помощью ЧИСЛОВОЙФОРМАТ или умножьте значение на 1 (=LN(A1*1)).

1. Ошибка #ЧИСЛО! для отрицательных чисел. Какmentioned earlier, LN не работает с отрицательными значениями. Но если вам нужно рассчитать логарифм для комплексного числа (например, в электротехнике), используйте функцию ИМЛН (доступна с Excel 2013):

=ИМЛН(комплексное_число)

Пример для числа -5:

=ИМЛН(КОМПЛЕКСН(-5; 0))

Вернёт комплексный результат: 1.609 + 3.142i (где 3.142 — это π, а 1.609 ≈ ln(5)).

2. Ошибка #ДЕЛ/0! при делении на LN. Часто возникает в формулах вида =A/B, где B содержит LN. Например:

=10 / LN(1)

вернёт #ДЕЛ/0!, потому что LN(1) = 0. Решение: добавьте проверку с ЕСЛИОШИБКА:

=ЕСЛИОШИБКА(10 / LN(A1); "Ошибка: ln=0")

3. Неточные результаты из-за округления. Excel хранит числа с ограниченной точностью (15 знаков). Если вам нужны сверхточные расчёты (например, в научных вычислениях), используйте функцию ТОЧНОСТЬ или увеличьте количество десятичных знаков в формате ячейки.

Почему LN(EXP(x)) не всегда равен x?

Из-за ограниченной точности вычислений с плавающей запятой в Excel. Например, =LN(EXP(1000)) вернёт не 1000, а 999.999... из-за округления. Для критичных расчётов используйте библиотеки произвольной точности (VBA или Python).

LN vs LOG: когда какую функцию использовать

Многие пользователи путают LN и LOG, особенно когда речь идёт о формулах с переменным основанием. Разберём ключевые различия:

1. LN — всегда по основанию e. Нет аргументов, только одно число:

=LN(10)  // Натуральный логарифм

2. LOG — универсальная функция:

- Без второго аргумента: десятичный логарифм (=LOG(100) → 2).

- С двумя аргументами: логарифм по любому основанию (=LOG(8; 2) → 3, потому что 2³=8).

3. LOG10 — специализированная функция для десятичных логарифмов (аналог LOG без второго аргумента, но работает быстрее).

Когда что использовать:

  • 🔢 Для финансовых расчётов (непрерывное начисление процентов) — только LN.
  • 📊 Для построения графиков с логарифмической шкалой — LOG10 (если шкала по основанию 10) или LOG с явным указанием основания.
  • 🧮 Для перевода между системами счисления (например, двоичной и десятичной) — LOG с основанием 2.

Расширенные приёмы: LN с массивами и динамическими формулами

В современных версиях Excel (2019, 2021, 365) появились динамические массивы, которые позволяют применять LN ко всему диапазону сразу, без копирования формулы. Рассмотрим несколько примеров:

1. Применение LN ко всему столбцу. Вместо того чтобы тянуть формулу вниз, используйте:

=BYROW(A1:A10; LAMBDA(x; LN(x)))

Эта формула вернёт массив натуральных логарифмов для каждого значения в A1:A10.

2. Фильтрация ошибок. Если в данных есть нули или отрицательные числа, добавьте проверку:

=BYROW(A1:A10; LAMBDA(x; ЕСЛИ(x>0; LN(x); "Ошибка")))

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

// X-значения (без изменений)

=A1:A10

// Y-значения (логарифмированные)

=LN(B1:B10)

Затем используйте ЛИНЕЙН или НАКЛОН для нового диапазона.

4. LN с условным форматированием. Подсветите ячейки, где логарифм превышает пороговое значение:

- Выделите диапазон с данными.

- Создайте правило условного форматирования с формулой:

=LN(A1)>1

- Задайте формат (например, зелёную заливку).

Эти приёмы экономят время и уменьшают риск ошибок при работе с большими наборами данных.

Альтернативы LN в Excel: VBA и Power Query

Если встроенных функций Excel недостаточно, можно использовать VBA или Power Query для расширенных расчётов.

1. VBA-функция для LN с обработкой ошибок. Создайте пользовательскую функцию, которая будет возвращать текст вместо ошибки:

Function SafeLN(x As Double) As Variant

If x <= 0 Then

SafeLN = "Ошибка: число <= 0"

Else

SafeLN = Application.WorksheetFunction.Ln(x)

End If

End Function

Теперь в ячейке можно использовать =SafeLN(A1).

2. Power Query для логарифмического преобразования. Если вы импортируете данные из внешнего источника:

1. Загрузите данные в Power Query (Данные → Получить данные).

2. Добавьте пользовательский столбец с формулой:

= if [Column1] > 0 then Number.Log([Column1]) else null

3. Загрузите результат обратно в Excel.

3. Логарифм для комплексных чисел. В Excel 2013+ есть функция ИМЛН, но если её нет, можно написать на VBA:

Function ComplexLN(z As Complex) As Complex

ComplexLN = Complex.Log(z)

End Function

(Требуется подключить библиотеку Microsoft Complex Math Type*.)

Эти методы полезны для автоматизации рутинных задач или работы с нестандартными данными.

FAQ: Частые вопросы о натуральном логарифме в Excel

Можно ли в Excel рассчитать натуральный логарифм для отрицательного числа?

Да, но только через комплексные числа. Используйте функцию ИМЛНExcel 2013):

=ИМЛН(КОМПЛЕКСН(-5; 0))

Результат будет в формате a + bi, где a — вещественная часть, b — мнимая.

Почему LN(EXP(x)) не равен x для больших значений x?

Это связано с ограниченной точностью вычислений с плавающей запятой в Excel. Например, =LN(EXP(1000)) вернёт ≈999.999 вместо 1000. Для критичных расчётов используйте специализированное ПО (например, Wolfram Mathematica) или увеличьте разрядность в VBA.

Как построить график с логарифмической шкалой по оси Y?

1. Постройте обычный график (Вставка → График).

2. Кликните правой кнопкой по оси Y → Формат оси.

3. Поставьте галочку Логарифмическая шкала.

4. Если нужна натуральная шкала (по основанию e), предварительно преобразуйте данные с помощью LN.

Можно ли использовать LN в условном форматировании?

Да. Например, чтобы подсветить ячейки, где натуральный логарифм больше 1:

  1. Выделите диапазон.
  2. Создайте правило Условное форматирование → Создать правило → Использовать формулу.
  3. Введите формулу: =LN(A1)>1.
  4. Задайте формат (цвет заливки, шрифта и т.д.).
Как рассчитать натуральный логарифм для всего столбца без копирования формулы?

В Excel 365 или Excel 2021 используйте динамические массивы:

=BYROW(A1:A100; LAMBDA(x; LN(x)))

В более старых версиях придётся копировать формулу вниз или использовать VBA.