Скидки до 20% + 2-ая профессия бесплатно и подарки на 50 000₽

Главная | Все статьи | Код

Что такое NumPy и зачем он нужен?

Python Время чтения статьи ~3 минуты 5
Что такое NumPy и зачем он нужен? главное изображение

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

Познакомьтесь с Python бесплатно

Начните с этих 5 уроков

Зачем аналитику данных NumPy?

Количество данных постоянно растет: в 2010 году было всего 2 Збайт, в 2020 — более 64 Збайт, а в 2025 этот объем может превысить 180 Збайт. Аналитикам данных приходится работать с весьма объемными массивами. Для этого создали инструменты, которые позволяют быстрее обрабатывать данные или проводить вычисления. Например, одна из первых библиотек для Python, Numeric, всё еще доступна и стабильно работает. Однако она медленно обрабатывает большие данные.

NumPy, или Numerical Python, решает эту задачу: она быстро работает с многомерными массивами. Во-первых, NumPy написана частично на Python (интерпретируемом языке) и частично на C и С++ (компилируемых языках программирования). Последние использовали именно там, где важна скорость, ведь благодаря компиляторам вычисления на C и С++ быстрее, чем на интерпретируемых языках.

Во-вторых, NumPy работает только с массивами из однородных элементов, например только с целыми или только с дробными числами. Это позволяет увеличить скорость вычислений до 50 раз и сократить время обработки данных, поскольку аналитику не нужно приводить типы данных к единому виду и обрабатывать их. Еще NumPy работает только с массивами одного типа. Массивы могут быть одномерными, двухмерными, трехмерными и так далее.

Одномерный массив

Поскольку количество осей массива не ограничено, их часто обозначают переменной N. Поэтому обычно говорят, что NumPy работает с N-мерными массивами данных. Массив создается с помощью функции array. В нее кладется Python-список, который нужно создать. Пример одномерного массива можно найти выше. Двухмерный будет состоять из двух одномерных, а трехмерный — из двух двухмерных.

Двухмерный массив

При создании массива в NumPy можно указать тип данных с помощью dtype. Эту функцию можно использовать, только если переменные варьируются от -32 768 до 36 767, иначе значения обнулятся и отсчет начнется заново.

Применение функции dtype

Базовый функционал NumPy для аналитиков данных

Рассказываем про базовый функционал NumPy, который позволит быстро работать с N-мерными массивами данных. Например, с помощью функции ndim можно узнать количество измерений в массиве, shape показывает количество строк и столбцов, а size — количество элементов. itemsize отображает количество байт, которое занимает один элемент, а nbytes — весь массив.

Допустим, в NumPy создан такой массив:

Система покажет следующие значения при запуске функций ndim, shape и size:

Еще можно обращаться к определенным элементам, столбцам, строкам, выбирать последовательность нужных элементов или менять значения в массиве.

Вычислительные операции в NumPy

В NumPy доступны традиционные математические операции: сложение, вычитание, деление и умножение. Их можно проводить как между массивами, так и между массивом и одним числом. Например, система может просуммировать массивы по позициям или, другими словами, сложить значения каждой строки.

При запуске функции получится такой результат:

Аналогично можно вычитать, умножать, делить.

Еще в NumPy можно делать срез массива (индексировать его) или агрегировать данные: вычислять минимальное и максимальное значения, сумму, среднее значение и стандартное отклонение.

Преимущества NumPy для аналитиков данных

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

Попробуйте себя в Python

Начать с 5 бесплатных уроков

Похожие статьи
Рекомендуемые программы
профессия
Верстка на HTML5 и CSS3, Программирование на JavaScript в браузере, разработка клиентских приложений используя React
10 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на Python, Разработка веб-приложений и сервисов используя Django, проектирование и реализация REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
Тестирование веб-приложений, чек-листы и тест-кейсы, этапы тестирования, DevTools, Postman, SQL, Git, HTTP/HTTPS, API
4 месяца
с нуля
Старт 26 декабря
профессия
Программирование на Java, Разработка веб-приложений и микросервисов используя Spring Boot, проектирование REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
новый
Google таблицы, SQL, Python, Superset, Tableau, Pandas, визуализация данных, Anaconda, Jupyter Notebook, A/B-тесты, ROI
9 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на PHP, Разработка веб-приложений и сервисов используя Laravel, проектирование и реализация REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на Ruby, Разработка веб-приложений и сервисов используя Rails, проектирование и реализация REST API
5 месяцев
c опытом
Старт 26 декабря
профессия
Программирование на JavaScript в браузере и на сервере (Node.js), разработка бекендов на Fastify и фронтенда на React
16 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на JavaScript, разработка веб-приложений, bff и сервисов используя Fastify, проектирование REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
новый
Git, JavaScript, Playwright, бэкенд-тесты, юнит-тесты, API-тесты, UI-тесты, Github Actions, HTTP/HTTPS, API, Docker, SQL
8 месяцев
c опытом
Старт 26 декабря