numpy.ptp()
Функция numpy.ptp() (peak-to-peak) возвращает разность между максимумом и минимумом массива. Эквивалент np.max(a) - np.min(a). Удобно оценивать амплитуду сигнала и диапазон значений.
Сигнатура
numpy.ptp(a, axis=None, out=None, keepdims=False)
Параметры
a— входной массив.axis— ось вычисления.out— массив для результата.keepdims— сохранять размерность.
Возвращает
Скаляр или ndarray размахов.
Пример 1. Размах одномерного массива
import numpy as np
a = np.array([3, 7, 2, 9, 5])
print(np.ptp(a))
7
9 - 2 = 7.
Пример 2. Амплитуда звукового сигнала
import numpy as np
# Отсчёты микрофона 0..1023 (10-битный АЦП)
sound = np.array([512, 580, 720, 410, 612, 480])
amp = np.ptp(sound)
print(f"Амплитуда: {amp} отсчётов")
Амплитуда: 310 отсчётов
Пример 3. Размах по столбцам
import numpy as np
data = np.array([[1, 5, 9],
[3, 4, 11],
[2, 6, 8]])
print(np.ptp(data, axis=0))
[2 2 3]
Пример 4. Размах по строкам
import numpy as np
data = np.array([[1, 5, 9],
[3, 4, 11]])
print(np.ptp(data, axis=1))
[8 8]
Пример 5. Дрейф датчика температуры за час
import numpy as np
temps = np.array([22.1, 22.4, 22.7, 23.0, 22.8, 22.2])
drift = np.ptp(temps)
print(f"Дрейф: {drift:.2f}°C")
Дрейф: 0.90°C
См. также
Примечание
Лицензия и источники
Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.