Все в Numpy
Если вы занимаетесь наукой о данных или машинным обучением, вы, скорее всего, столкнетесь с библиотекой Python NumPy. NumPy — это библиотека с открытым исходным кодом, которая широко используется в научных вычислениях и анализе данных. Он обеспечивает надежную поддержку многомерных массивов и матриц, а также широкий спектр математических функций для работы с ними. Вот некоторые из наиболее часто используемых функций, которые помогут вам начать работу с NumPy.
Создание массивов
Массивы лежат в основе NumPy. Создать массивы в NumPy очень просто, и есть несколько способов сделать это. Наиболее распространенным способом создания массивов является использование функции `array()`, которая принимает список или кортеж и возвращает массив. Например, чтобы создать одномерный массив из трех элементов, вы можете использовать следующий код:
import numpy as np my_array = np.array([1, 2, 3])
Если вы хотите создать двумерный массив с тремя строками и двумя столбцами, вы можете использовать вложенный список:
my_2d_array = np.array([[1, 2], [3, 4], [5, 6]])
Математические операции
NumPy предоставляет широкий спектр математических функций для работы с массивами. Эти функции оптимизированы для числовых операций и работают намного быстрее, чем их аналоги в Python. Некоторые из наиболее часто используемых математических функций включают в себя:
- np.add(): добавляет два массива поэлементно
- np.subtract(): вычитает два массива поэлементно
- np.multiply(): умножает два массива поэлементно
- np.divide(): делит два массива поэлементно
Вот пример использования функции add() для добавления двух массивов:
a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) c = np.add(a, b) print(c) # output: [5, 7, 9]
Операции с массивами
NumPy предоставляет несколько функций для работы с массивами. Вот некоторые часто используемые функции:
- np.reshape(): преобразует массив в новую форму.
- np.concatenate(): объединяет два или более массивов.
- np.transpose(): транспонирует массив
Вот пример того, как использовать функцию `reshape()` для изменения формы массива:
a = np.array([1, 2, 3, 4, 5, 6]) b = np.reshape(a, (2, 3)) print(b) # output: [[1, 2, 3], [4, 5, 6]]
Вот пример использования функции concatenate() для объединения двух массивов:
a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) c = np.concatenate((a, b)) print(c) # output: [1, 2, 3, 4, 5, 6]
Вот пример того, как использовать функцию `transpose()` для транспонирования массива:
a = np.array([[1, 2], [3, 4], [5, 6]]) b = np.transpose(a) print(b) # output: [[1, 3, 5], [2, 4, 6]]
Установить операции
NumPy предоставляет функции для выполнения операций над множествами, таких как объединение и пересечение:
- np.union1d(): создает массив уникальных элементов в двух массивах.
- np.intersect1d(): находит пересечение двух массивов.
Вот пример обоих
a = np.array([1, 2, 0]) b = np.array([1, 3, 4]) print(np.union1d(a, b)) # output: [0, 1, 2, 3, 4] print(np.intersect1d(a, b)) # output: [1]
Создание рассылки
NumPy предоставляет несколько функций для создания дистрибутива. Вот некоторые часто используемые функции распределения:
- np.random.normal(): создает нормальное распределение на основе мю (среднее значение) и сигма (дисперсия)
- np.random.uniform(): создает равномерное распределение
- np.random.binomial: создает биномиальное распределение на основе n (испытаний) и p (вероятность).
Вот пример использования функции normal() для создания нормального распределения с использованием массива:
import numpy as np import matplotlib.pyplot as plt mu, sigma = 0, 0.1 #mean and variance z = np.random.normal(mu, sigma, 100000) plt.hist(z) plt.show()
Вот пример того, как использовать функцию `uniform()` для создания равномерного распределения с использованием массива:
z = np.random.uniform(0, 10, 100000) plt.hist(z) plt.show()
Вот пример того, как использовать функцию `binomial()` для создания биномиального распределения с использованием массива:
n, p = 10, 0.5 z = np.random.binomial(n, p, 1000000) plt.hist(z) plt.show()
Заключение
Это лишь некоторые из многих функций, которые предоставляет NumPy. С помощью этих функций вы можете выполнять широкий спектр операций с массивами и матрицами. NumPy — это мощная библиотека, которая может помочь вам упростить анализ данных и рабочие процессы машинного обучения.
Не забудьте подписаться на нашу рассылку, чтобы быть в курсе последних новостей и обновлений инструментов и методов обработки данных!