numpy.log()
Функция numpy.log() поэлементно вычисляет натуральный логарифм (по основанию e) элементов массива. Обратная к numpy.exp().
Сигнатура
numpy.log(x, /, out=None, *, where=True, casting='same_kind',
order='K', dtype=None, subok=True[, signature, extobj])
Параметры
x— входной массив. Допускаются положительные значения; для нуля —-inf, для отрицательных —nan.out— массив-приёмник.where— маска применения.dtype— тип результата.
Возвращаемое значение
ndarray или скаляр с натуральными логарифмами. Для x = 0 возвращается -inf, для x < 0 — nan с предупреждением.
Примеры
Пример 1. Логарифм чисел.
import numpy as np
a = np.array([1, np.e, np.e**2])
print(np.log(a))
[0. 1. 2.]
Пример 2. Граничные значения.
a = np.array([0.0, 1.0, -1.0])
print(np.log(a))
[-inf 0. nan]
Пример 3. Шкала децибел.
# P в мВт → дБм = 10 * log10(P) — для иллюстрации используем log/log10
P = np.array([1.0, 10.0, 100.0, 1000.0])
dBm = 10 * np.log(P) / np.log(10)
print(dBm)
[ 0. 10. 20. 30.]
Пример 4. Время разряда конденсатора.
# t = -RC * ln(U/U0)
U0 = 5.0
U = np.array([5.0, 3.0, 1.0, 0.5])
RC = 0.1
t = -RC * np.log(U / U0)
print(t.round(4))
[0. 0.0511 0.1609 0.2303]
Пример 5. Закон Вебера-Фехнера: восприятие — логарифм стимула.
stimulus = np.array([1, 10, 100, 1000])
perception = np.log(stimulus)
print(perception.round(3))
[0. 2.303 4.605 6.908]
См. также
Примечание
Лицензия и источники
Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.