Математические функции в NumPy

Обзор математических функций NumPy

NumPy предоставляет широкий спектр математических функций для работы с одномерными и многомерными массивами.

Базовые арифметические функции

Эти функции позволяют выполнять элементарные арифметические операции на массивах.

import numpy as np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])

# Сложение элементов двух массивов
print(np.add(a, b))       # [5 7 9]
# Вычитание элементов одного массива из другого
print(np.subtract(a, b))  # [-3 -3 -3]
# Умножение элементов двух массивов
print(np.multiply(a, b))  # [4 10 18]
# Деление одного массива на другой
print(np.divide(a, b))    # [0.25 0.4 0.5]

Тригонометрические функции

NumPy поддерживает все основные тригонометрические функции.

angles = np.array([0, np.pi/2, np.pi])
# Синус углов
print(np.sin(angles))   # [0.0000000e+00 1.0000000e+00 1.2246468e-16]
# Косинус углов
print(np.cos(angles))   # [ 1.000000e+00  6.123234e-17 -1.000000e+00]
# Тангенс углов
print(np.tan(angles))   # [ 0.00000000e+00  1.63312394e+16 -1.22464680e-16]

Логарифмические и экспоненциальные функции

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

x = np.array([1, 2, 3])
# Натуральный логарифм элементов массива
print(np.log(x))         # [0. 0.69314718 1.09861229]
# Логарифм элементов массива по основанию 2
print(np.log2(x))        # [0. 1. 1.5849625]
# Логарифм элементов массива по основанию 10
print(np.log10(x))       # [0. 0.30103 0.47712125]
# Экспоненциальная функция для элементов массива
print(np.exp(x))         # [ 2.71828183  7.3890561  20.08553692]

Степенные и корневые функции

x = np.array([1, 2, 3, 4])
# Возведение элементов массива в степень 2
print(np.power(x, 2))    # [1 4 9 16]
# Вычисление квадратного корня элементов массива
print(np.sqrt(x))        # [1. 1.41421356 1.73205081 2.]

Гиперболические функции

x = np.array([1, 2, 3])
# Гиперболический синус элементов массива
print(np.sinh(x))  # [1.17520119 3.62686041 10.01787493]
# Гиперболический косинус элементов массива
print(np.cosh(x))  # [1.54308063 3.76219569 10.067662]
# Гиперболический тангенс элементов массива
print(np.tanh(x))  # [0.76159416 0.96402758 0.99505475]

Функции для округления

x = np.array([1.1, 1.5, 1.9])
# Округление элементов массива к ближайшему целому числу
print(np.around(x))  # [1. 2. 2.]
# Округление элементов массива в меньшую сторону
print(np.floor(x))   # [1. 1. 1.]
# Округление элементов массива в большую сторону
print(np.ceil(x))    # [2. 2. 2.]

Прочие функции

x = np.array([-1, 0, 1])
# Вычисление абсолютного значения элементов массива
print(np.absolute(x))  # [1 0 1]
# Определение знака элементов массива (-1 для отрицательных, 0 для нуля, 1 для положительных)
print(np.sign(x))      # [-1  0  1]

Заключение

Это лишь основные математические функции, предоставляемые NumPy. Углубившись в документацию и экспериментировав с функциями, можно открыть для себя гораздо больше возможностей.

Содержание: