РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
102 of 541 menu

Функция absolute

Функция absolute (и её синоним abs) вычисляет абсолютное значение для каждого элемента переданного массива. Для действительных чисел это их модуль (расстояние от нуля), а для комплексных - их величина (модуль комплексного числа). Функция возвращает новый массив с результатами, сохраняя исходный массив неизменным.

Синтаксис

np.absolute(x, out=None, where=True)

Параметр x - это входной массив или скаляр. Необязательный параметр out задаёт массив для сохранения результата. Параметр where определяет условие для вычислений.

Пример с целыми числами

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

import numpy as np arr = np.array([-5, -2, 0, 3, 7]) res = np.absolute(arr) print(res)

Результат выполнения кода:

[5 2 0 3 7]

Как видно, все отрицательные числа стали положительными, а ноль и положительные числа остались без изменений.

Пример с числами с плавающей точкой

Работа с числами с плавающей точкой происходит аналогично:

import numpy as np arr = np.array([-1.5, -0.0, 0.5, 3.14, -2.71]) res = np.abs(arr) # Используем синоним print(res)

Результат выполнения кода:

[1.5 0. 0.5 3.14 2.71]

Функция корректно обрабатывает как положительные, так и отрицательные числа с плавающей точкой.

Пример с комплексными числами

Для комплексных чисел функция вычисляет их модуль (длину вектора на комплексной плоскости):

import numpy as np arr = np.array([3+4j, 1-2j, -5+12j, 0+1j]) res = np.absolute(arr) print(res)

Результат выполнения кода:

[ 5. 2.23606798 13. 1. ]

Модуль вычисляется по формуле sqrt(Re² + Im²), поэтому для 3+4j результат равен 5.0.

Пример использования параметра out

Можно сохранить результат в заранее выделенный массив, используя параметр out:

import numpy as np arr = np.array([-10, -20, 30, -40, 50]) out_arr = np.empty_like(arr) np.absolute(arr, out=out_arr) print(out_arr)

Результат выполнения кода:

[10 20 30 40 50]

Этот подход позволяет избежать создания нового массива и экономит память при работе с большими данными.

Смотрите также

  • функцию sign,
    которая возвращает знак каждого элемента массива
  • функцию fabs,
    которая вычисляет модуль для чисел с плавающей точкой (быстрее, но не поддерживает комплексные)
  • функцию sqrt,
    которая вычисляет квадратный корень из элементов массива
  • функцию square,
    которая возводит элементы массива в квадрат
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить