В нашей прошлой статье «Библиотеки Python для Data Science» мы осветили список самых популярных библиотек и фреймворков, которые используются как в Data Science, так и любыми другими программистами на Python. Однако, это далеко не весь список.
Сегодня мы хотели бы рассмотреть еще несколько библиотек, которые заслуживают отдельное место в этом топе. Какие-то используются чаще, какие-то реже, но все они однозначно будут Вам полезны.
Если Ваша деятельность хоть как-то связана с анализом данных, то Вы наверняка не понаслышке знакомы с библиотекой Pandas. Если же Вы только начинаете свой путь – то можете не терять время и сразу же приступать к знакомству.
Если тезисно: Pandas – библиотека для комплексной обработки данных. Pandas решает сразу несколько разноплановых задач: загрузка данных, предобработка данных, моделирование и проведение анализа.
Некоторые называют Pandas как бы «ответом» семейству библиотек Tidyverse языка R. В целом, в этом есть доля правды, ведь оба инструмента решают схожие задачи. «Что из этого лучше», – спросите Вы? Лично я для задач анализа данных отдаю предпочтение языку R. На мой взгляд, язык для этого больше заточен и многие вещи на нем делать элементарно проще и удобней. Однако, я ни в коем случае не отрицаю авторитетность Pandas и его положение в этом сегменте – суперполезная библиотека и must have любого питониста.
Очевидные плюсы Pandas:
Однако, как и у всех, у Pandas есть ряд недостатков:
Тем не менее, библиотека крутая и избегать ее не стоит (да и не получится особо, жизнь заставит), даже несмотря на недостатки.
Как и в предыдущей подборке, здесь мы не обойдемся без deep learning библиотеки. Ранее мы уже рассмотрели PyTorch и Tensorflow, пришло время и для Keras.
Keras – как бы библиотека-обертка над некоторыми другими deep learning фреймворками (например, Tensorflow). Библиотека была спроектирована, чтобы облегчить процесс экспериментов: возможность быстро превращать идеи в результат – залог успеха!
Все основные сильные стороны библиотеки Keras вытекают из ее предназначения:
Опять же, недостатки тоже логично вытекают из основного посыла библиотеки:
Как итог – библиотека популярная (согласно официальному сайту, это самый популярный фреймворк среди топ-5 команд-победителей на Kaggle) и прекрасно подходит как новичкам, так и продвинутым пользователям. Да и в конце концов – чем больше Вы знаете, тем лучше! Тем более в индустрии deep learning все инструменты так тесно между собой связаны, что рано или поздно придется освоить, как минимум, несколько.
Вообще говоря, со SciPy в рамках наших обзоров Вы уже неоднократно знакомились. Не помните? Объясняем. SciPy – экосистема Python, включающая в себя библиотеки для проведения инженерных расчетов, вычислений и исследований. И как раз-таки эти библиотеки Вы уже и знаете – например, NumPy, Matplotlib, Pandas и другие.
Область применения SciPy весьма велика – от вычисления интегралов до обработки сигналов и изображений.
Слабые и сильные стороны экосистема SciPy наследует напрямую от входящих в нее библиотек:
На слабых сторонах отдельно останавливаться не будем, т.к. для каждой входящей в состав SciPy библиотеки они разные и нет смысла пытаться их совместить.
Основной смысл такой – библиотека SciPy абсолютно точно Вам нужна, если Вы в том или ином виде занимаетесь проведением расчетов/обработкой результатов экспериментов/околонаучными разработками. Прямые конкуренты экосистемы SciPy – Matlab и R. Если Вы предпочитаете Python, то можете достаточно легко и беспрепятственно перейти с привычных языков на Python, просто освоив нужные модули SciPy.
Если Вам не приходится работать с вебом, то библиотека Requests, возможно, обойдет Вас стороной. Однако, в наше время едва ли много людей смогут обойти HTTP запросы стороной – так или иначе всем приходится автоматизировано скачивать что-то из сети; работать с API и делать прочие штуки. Поэтому хотя бы базовые вещи из библиотеки Requests – очень желательно к изучению.
Если коротко, то Requests – библиотека Python, которая позволяет в «человеческом» виде отправлять и принимать http-запросы. Вообще, работа с http – нетривиальная задача в любом языке программирования, и Python – не исключение. А Requests как раз и позволяет хотя бы немного облегчить жизнь разработчику.
Кстати говоря, это одна из самых популярных библиотека на Github – у нее более 40 тысяч звезд.
Обсуждать здесь плюсы и минусы не очень объективно, т.к. особых конкурентов у библиотеки просто нет. Можно лишь отметить, что синтаксис достаточно удобен и понятен. Помимо этого, функциональность библиотеки также весьма велика – например, requests поддерживает полную работу с API, а также содержат вшитый JSON-декодировщик.
Если Вы так или иначе пересекаетесь с веб-запросами/веб-скраппингом/парсингом или другими занятными вещами, то для Вас это must have. Если в Вашу сферу интересов это не входит, то рекомендуем хотя бы поверхностно поиграться с этой библиотекой. Возможно, это Вам позволит автоматизировать и упросить некоторые процессы.
«Нет предела совершенству», – пословица абсолютно про программирование. Вы можете быть спецом в какой-то области, но «освоить какой-то язык программирования» на все сто процентов – невозможно. Слишком много библиотек, чтобы знать все (да это и не нужно). Но знать самые базовые вещи – крайне желательно для специалиста в любой области. Чем большим набором знаний Вы обладаете, тем легче Вы будете решать возникающие задачи; тем шире будет Ваш кругозор и тем выше Вы будете цениться в профессиональной среде.
Изучите Python на курсе «Data Science Academy» от SF Education!
Автор: Андрон Алексанян, практикующий Data Scientist и эксперт SF Education