Использование библиотеки NumPy для анализа данных и массивных вычислений (базовые ...

арифметические операции, мультивекторы)

Библиотека NumPy является одной из основных для анализа данных и выполнения массивных вычислений в Python. Она предоставляет мощные инструменты для работы с многомерными массивами и матрицами. Вот основные базовые арифметические операции и работа с мультивекторами, которые можно выполнять с помощью NumPy.

Установка библиотеки

Если библиотека еще не установлена, её можно установить с помощью pip:

pip install numpy

Основы работы с NumPy

Импорт библиотеки

import numpy as np

Создание массивов

# Создание одномерного массива
a = np.array([1, 2, 3, 4, 5])

# Создание двумерного массива
b = np.array([[1, 2, 3], [4, 5, 6]])

# Массивы с помощью специальных функций
c = np.zeros((2, 3))  # Массив из нулей
d = np.ones((3, 4))   # Массив из единиц
e = np.eye(3)         # Единичная матрица
f = np.arange(10)     # Массив от 0 до 9
g = np.linspace(0, 1, 5)  # Массив от 0 до 1 с 5 элементами

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

NumPy поддерживает векторизацию операций, что делает их быстрыми и удобными.

# Арифметические операции с массивами
a = np.array([1, 2, 3, 4])
b = np.array([5, 6, 7, 8])

# Сложение
c = a + b

# Вычитание
d = a - b

# Умножение
e = a * b

# Деление
f = a / b

# Возведение в степень
g = a ** 2

Универсальные функции (ufunc)

NumPy предоставляет множество математических функций, которые применяются элемент-wise к массивам.

# Использование универсальных функций
a = np.array([1, 2, 3, 4])

# Синус
sin_a = np.sin(a)

# Экспонента
exp_a = np.exp(a)

# Логарифм
log_a = np.log(a)

Массивы и мультивекторы

NumPy также позволяет выполнять операции над многомерными массивами (матрицами), и проводить более сложные вычисления.

# Создание матриц
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])

# Сложение матриц
C = A + B

# Умножение матриц
D = A @ B  # Также можно использовать np.dot(A, B)

# Транспонирование
E = A.T

# Сложение по осям
F = np.sum(A, axis=0)  # Сложение по строкам (возвращает сумму по каждому столбцу)
G = np.sum(A, axis=1)  # Сложение по столбцам (возвращает сумму по каждой строке)

Индексация и срезы

NumPy позволяет легко индексировать и создавать срезы массивов.

# Индексация
a = np.array([10, 20, 30, 40, 50])
element = a[2]  # Доступ к третьему элементу

# Срезы
slice_a = a[1:4]  # Массив от второго до четвертого элемента

# Двумерные массивы
b = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
element = b[1, 2]  # Доступ к элементу в строке 2, столбце 3
row = b[1, :]      # Вся вторая строка
column = b[:, 2]   # Весь третий столбец

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

Last updated