Python pandas numpy scipy

Топ-5 библиотек Python, используемых в Data Science

Сегодня Python является наиболее широко используемым языком программирования. И он не перестает удивлять своих пользователей, когда речь идет о решении как рутинных, так и более сложных задач в области Data Science. Большинство представителей этой области уже ежедневно пользуются возможностям, которые дает им программирование на Python. Ведь этот объектно-ориентированный язык с открытым исходным кодом является простым, легко отлаживаемым и высокоэффективным. Причем преимуществ у Python гораздо больше. Этот язык дополняют крутые библиотеки, которые постоянно востребованы в решении задач, стоящих перед программистами.

5 наиболее популярных библиотек Python для Data Science:

1. TensorFlow

TensorFlow — это библиотека для высокопроизводительных численных расчетов, насчитывающая около 35 000 коммитов на GitHub и активное сообщество, состоящие примерно из 1500 участников. Она используется в различных научных областях и представляет собой структуру для определения и запуска вычислений, в которых используются тензоры. Тензоры это частично определенные вычислительные объекты, которые в конечном счете создают значение.

Особенности:

  • Лучшая визуализация компьютерных графиков
  • Уменьшает ошибку на 50-60 процентов в нейронном машинном обучении
  • Параллельные вычисления для создания сложных моделей
  • Удобное управление библиотекой, которая поддерживается Google
  • Быстрые обновления и регулярные выпуски новых версий, предоставляющих новые функции

Области использования:

  • Распознавание речи и изображений
  • Работа с текстом
  • Анализ временных последовательностей
  • Видео обнаружение
Читайте также:  Php substr from end

В видеоролике Top 5 Python Libraries For Data Science вы познакомитесь с примером распознавания рукописных цифр с помощью построения простой модели TensorFlow. Ролик вконце статьи.

2. NumPy

NumPy (Numerical Python) является фундаментальным пакетом для численных расчетов в Python, который включает в себя мощный объект N-мерного массива. Он имеет около 18 000 коммитов на GitHub и активное сообщество из 700 участников. Numpy является универсальным пакетом обработки, который дает возможность работы с высокопроизводительными многомерными объектами, называемыми массивами, а также предоставляет сопутствующие инструменты для этого. Благодаря этим массивам, а также функциям и операторам, которые с ними работают, Numpy частично решает проблему медленной работы Python.

Особенности:

  • Использование быстрых, предварительно скомпилированных функции для числовых операций
  • Высокая эффективность вычислений основанных на операциях с массивами
  • Поддержка объектно-ориентированного подхода
  • Компактные и быстрые вычисления с использованием векторов

Области использования:

  • Широкое использование в анализе данных
  • Создание больших N-мерных массивов
  • Формирование базы для других библиотек, таких как SciPy и scikit-learn.
  • Для замены MATLAB при использовании вместе с SciPy и matplotlib

Из видео вы также узнаете, как создать простой массив и изменить его форму с помощью функций NumPy arange и reshape.

3. SciPy

SciPy (Scientific Python) это другая свободная библиотека Python с открытым исходным кодом, которая широко используется в Data Science для высокоуровневых вычислений. У SciPy 19000 коммитов на GitHub и активное сообщество примерно из 600 участников. Эта библиотека широко используется для научных и технических вычислений так как она расширяет NumPy, и дает возможность пользоваться удобными и эффективными процедурами для научных расчетов.

Особенности:

  • Набор алгоритмов и функций построенных на пакете NumPy
  • Высокоуровневые команды для операций с данными и визуализации
  • Обработка многомерных изображений с SciPy.ndimage submodule
  • Включает встроенные функции для решения дифференциальных уравнений
Читайте также:  Http sp volgo mama ru index php

Области использования:

  • Обработка многомерных изображений
  • Решение дифференциальных уравнений и преобразований Фурье
  • Алгоритмы оптимизации
  • Линейная алгебра

Простую демонстрацию функций SciPy Можно посмотреть ниже в видео Top 5 Python Libraries For Data Science.

4. Pandas

Pandas (Python data analysis) является обязательным элементом жизненного цикла Data Science. Она является наиболее популярной и широко используемой библиотекой Data Science для Python наравне с Numpy и matplotlib с 17000 коммитов на GitHub и активным сообществом из 1200 участников. Pandas широко используется для анализа и обработки данных, при этом предоставляет возможность пользоваться гибкими структурами, такими например как DataFrame, которая была спроектирована таким образом, чтобы обеспечить интуитивную и быструю работу со структурированными данными.

Особенности:

  • Понятный синтаксис и богатые функциональные возможности, которые дают вам массу возможностей для поиска недостающих данных
  • Дает возможность создать функцию и многократно пропускать данные через нее
  • Высокий уровень абстракции
  • Включает в себя высокоуровневые структуры данных и инструменты обработки

Области использования:

  • Общая обработка и фильтрация данных
  • ETL (extract, transform, load — извлечение, преобразование, загрузка) задачи для преобразования и хранения данных, так как имеет полную поддержку преобразования файлов формата CSV в ее собственный формат для хранения таблиц данных
  • Используется во множестве научных и коммерческих областей, включающих финансы, статистику и неврологию
  • Работа с функциями временных рядов, такими как генерация диапазона дат, движущееся окно, линейная регрессия и сдвиг даты.

Пример того как создать таблицы с использованием Pandas вы можете посмотреть в нашем видео Top 5 Python Libraries For Data Science.

5. Matplotlib

Matplotlib имеет мощную и при этом еще и красивую визуализацию. Она представляет собой библиотеку построения графиков для Python с 26000 коммитами на GitHub и активным сообществом примерно из 700 участников. Благодаря графикам и чертежам, которые умеет выводить Matplotlib, она широко используется для визуализации данных. Matplotlib также предоставляет объектно-ориентированный API, который можно использовать для встраивания графиков в различные приложения.

Особенности:

  • Может использоваться в качестве бесплатной альтернативы MATLAB, с открытым исходным кодом.
  • Поддерживает десятки подчиненных приложений и типов данных для вывода, что означает, что вы можете пользоваться Matplotlib вне зависимости от того какая у вас операционная система и какой формат вы предпочитаете.
  • Pandas может быть использована в качестве оболочки для Matplotlib API для управления Matplotlib, в качестве фильтра.
  • Низкое потребление памяти и хорошая работа во время выполнения.

Области использования:

  • Корреляционный анализ переменных.
  • Визуализация интервалов 95-процентной вероятности для моделей.
  • Обнаружение выделяющихся значений с использованием точечной диаграммы и т. п.
  • Визуализация распределения данных для получения реальной картины

Видео Top 5 Python Libraries for Data Science демонстрирует простые примеры, которые помогут получить общее представление о возможностях Matplotlib.

Наряду с этими библиотеками специалисты Data Science также используют возможности некоторых других полезных библиотек:

Подобно TensorFlow, Keras — является еще одной популярной библиотекой, которая широко используется для модулей глубокого обучения и нейронных сетей. Keras поддерживает в качестве подчиненного приложения как TensorFlow, так и Theano, поэтому представляет собой хороший вариант, если вы не хотите погружаться в детали TensorFlow.

Scikit-learn — это библиотека машинного обучения, которая предоставляет практически все необходимые алгоритмы машинного обучения. Scikit-learn предназначен для совместной работы с NumPy и SciPy.

Seabourn — еще одна библиотека для визуализации данных. Это расширение matplotlib, предоставляющее дополнительные типы графиков.

Вот видео Simplilearn, в котором рассматриваются 5 лучших библиотек Python для Data Science, созданное экспертами в этой области.

Источник

5 самых полезных математических библиотек Python

Математика в Python не ограничивается простыми выражениями. Существует множество полезных библиотек и модулей, способных поднять ваши вычисления на совершенно другой уровень. В этой статье мы познакомимся с пятью самыми полезными из них.

Math

Рано или поздно наступит момент, когда вам не хватит стандартных математических операторов в Python. Например, придется найти квадратный корень, логарифм или синус. В этом вам поможет модуль Math.

>>> import math >>> math.sqrt(17) 4.123105625617661 >>> math.sin(33) 0.9999118601072672 >>> math.log(15, 2) 3.9068905956085187 

Помимо дополнительных математических функций, модуль содержит константы, такие как math.pi , math.e и бесконечность — math.inf . Функция math.isclose() поможет вам сравнивать числа с заданной точностью.

SymPy

SymPy — библиотека для работы с символьными вычислениями. С этим модулем возможно написать системы уравнений, подставить в них значения, сократить математические формулы. Результаты вычислений можно преобразовать в код LaTeX — это пригодится, если вы публикуете свои результаты в научных журналах или пишете диплом.

>>> from sympy import * . x = Symbol('x') . y, z = symbols('y, z') . expr = (x**2 + y**2) * z . expr z*(x**2 + y**2) >>> expr2 = expr.subs(x, 12) . expr2.subs(y, 3) 153*z 

NumPy

NumPy — библиотека для работы с n-мерными массивами. Они похожи на вложенные кортежи, но требуют, чтобы все элементы были одного типа. Над массивами целиком и их элементами можно проводить различные операции, недоступные для стандартных типов данных.

>>> import numpy as np >>> a = np.array([1, 0.5, -1.9], dtype=float) >>> b = np.array([[10], [10], [10]], dtype=float) c = np.array(a*b) c array([[ 10., 5., -19.], [ 10., 5., -19.], [ 10., 5., -19.]]) 

Также в этом пакете доступны продвинутые функции и методы для обработки массивов.

>>> # Ищем среднее по вертикали >>> c.mean(axis=0) array([ 10., 5., -19.]) >>> # Ищем среднее по горизонтали >>> c.mean(axis=1) array([-1.33333333, -1.33333333, -1.33333333]) 

Библиотека NumPy написана на С и очень хорошо оптимизирована, что позволяет максимально ускорить вычисления. Это делает ее основой для всех продвинутых математических библиотек Python`a.

SciPy

SciPy ещё больше расширяет возможности NumPy. В этой библиотеке есть множество модулей для самых разных вычислений. Например, модуль scipy.spatial позволяет работать с пространственными данными и алгоритмами, а scipy.stats — со статистикой и распределениями вероятностей. Если вы работали с MATLAB, то вам не составит труда разобраться и со SciPy.

from scipy import stats # Берем 30 значений из нормального распределения # со средним = 25 и стандартным отклонением = 10 a = stats.norm.rvs(size=30, loc=25, scale=10) # Рассчитываем эксцесс полученной выборки stats.kurtosis(a) 

Pandas

Библиотека Pandas также построена на основе NumPy. Она специализируется на работе с таблицами ( DataFrame ) и временными рядами ( Series ).

>>> import numpy as np . import pandas as pd . df = pd.DataFrame( . 'name': ['Viktor', 'Ann', 'Kim'], . 'age': [20, 35, np.nan], . 'score': [81.17, 93.7, np.nan] . >) . df name age score 0 Viktor 20.0 81.17 1 Ann 35.0 93.70 2 Kim NaN NaN 

Библиотека умеет обрабатывать таблицы не хуже полноценных табличных процессоров. Данные можно сортировать, фильтровать и группировать, загружать таблицы в разных форматах и объединять их.

>>> df[df['score'] > 90] name age score 1 Ann 35.0 93.7 

Pandas DataFrame используют практически все программы на Python, работающие с таблицами. Также на них часто обучают и проверяют нейросети.

Заключение

Мы рассмотрели самые популярные математические библиотеки Python. Каждая из них по-своему полезна. Для несложных вычислений вам подойдет модуль Math, а для работы с математическими уравнениями и выражениями — SymPy. Библиотека NumPy позволяет эффективно работать с многомерными массивами, поэтому большинство модулей, требующих сложных вычислений зависит от нее. SciPy расширяет возможности NumPy, добавляя модули, специализированные на разных областях науки и математики, а Pandas позволяет работать с таблицами и временными рядами.

Навыки работы с этими библиотеками пригодятся для разнообразных вычислений, которые то и дело требуются в программах. Умение математически обрабатывать данные на Python очень важно сферах Data science и Machine learning. Возможно, сейчас самое время подтянуть алгебру?

Практический Python для начинающих

Практический Python для начинающих

Станьте junior Python программистом за 7 месяцев

Источник

Оцените статью