- Оригинальный адрес:Lesser Known Python Libraries for Data Science
- Оригинальный автор:Parul Pandey
- Перевод с:Программа перевода самородков
- Постоянная ссылка на эту статью:GitHub.com/rare earth/gold-no…
- Переводчик:haiyang-tju
- Корректор:TrWestdoor
Python — отличный язык. Это один из самых быстрорастущих языков программирования в мире. Он снова и снова оказывается полезным для разработчиков и специалистов по обработке и анализу данных в разных отраслях. Вся экосистема Python и его библиотек делает его подходящим выбором для пользователей во всем мире (как для начинающих, так и для опытных пользователей). Одной из причин его успеха и популярности является обширная коллекция сторонних библиотек, которые поддерживают его работоспособность и эффективность.
В этой статье мы рассмотрим некоторые библиотеки Python для задач науки о данных, а не общие, такие какпанды, scikit-learn и matplotlib и т. д.библиотека. Хотя вродепанды и scikit-learnПодобные библиотеки часто используются для задач машинного обучения, но всегда полезно знать о других продуктах Python в этой области.
Wget
Извлечение данных из Интернета — одна из важных задач специалиста по данным.Wget— бесплатная утилита, которую можно использовать для загрузки неинтерактивных файлов из Интернета. Он поддерживает протоколы HTTP, HTTPS и FTP, а также извлечение файлов через HTTP-прокси. Поскольку он не интерактивен, он работает в фоновом режиме, даже если пользователь не вошел в систему. Поэтому в следующий раз, когда вы захотите загрузить все изображения на веб-сайте или странице,wgetмогу помочь тебе.
Установить:
$ pip install wget
пример:
import wget
url = 'http://www.futurecrew.com/skaven/song_files/mp3/razorback.mp3'
filename = wget.download(url)
100% [................................................] 3841532 / 3841532
filename
'razorback.mp3'
Pendulum
Для тех из вас, кто разочаровывается при работе с датами и временем в python, Pendulum для вас. это упрощениедата и времяПакет Python для манипуляций. Это простая замена нативным классам Python. видетьДокументацияГлубокое обучение.
Установить:
$ pip install pendulum
пример:
import pendulum
dt_toronto = pendulum.datetime(2012, 1, 1, tz='America/Toronto')
dt_vancouver = pendulum.datetime(2012, 1, 1, tz='America/Vancouver')
print(dt_vancouver.diff(dt_toronto).in_hours())
3
imbalanced-learn
Можно видеть, что большинство алгоритмов классификации работают лучше всего, когда количество выборок в каждом классе в основном одинаково, т. е. необходимо поддерживать баланс данных. Однако большинство реальных случаев представляют собой несбалансированные наборы данных, которые оказывают большое влияние на этап обучения и последующее прогнозирование алгоритмов машинного обучения. К счастью, эта библиотека предназначена для решения этой проблемы. это сscikit-learnсовместимы, даscikit-lear-contribчасть проекта. Попробуйте в следующий раз, когда столкнетесь с несбалансированным набором данных.
Установить:
pip install -U imbalanced-learn
# 或者
conda install -c conda-forge imbalanced-learn
пример:
Использование и примеры см.Документация.
FlashText
В задачах НЛП очистка текстовых данных часто требует замены или извлечения ключевых слов из предложений. Обычно это можно сделать с помощью регулярных выражений, но это может стать громоздким, если количество поисковых терминов исчисляется тысячами. ПитонFlashTextмодуль основан наАлгоритм FlashTextпредлагает подходящую альтернативу для этой ситуации. Отличительной особенностью FlashText является то, что время выполнения одинаково независимо от количества условий поиска. ты сможешьздесьВыучить больше.
Установить:
$ pip install flashtext
пример:
Извлечь ключевые слова
from flashtext import KeywordProcessor
keyword_processor = KeywordProcessor()
# keyword_processor.add_keyword(<unclean name>, <standardised name>)
keyword_processor.add_keyword('Big Apple', 'New York')
keyword_processor.add_keyword('Bay Area')
keywords_found = keyword_processor.extract_keywords('I love Big Apple and Bay Area.')
keywords_found
['New York', 'Bay Area']
заменить ключевое слово
keyword_processor.add_keyword('New Delhi', 'NCR region')
new_sentence = keyword_processor.replace_keywords('I love Big Apple and new delhi.')
new_sentence
'I love New York and NCR region.'
Для более практических случаев, пожалуйста, обратитесь к официальной документации.
Fuzzywuzzy
Название этой библиотеки может показаться странным, но когда дело доходит до сопоставления строк, fuzzywuzzy оказывается очень полезной библиотекой. Он может легко выполнять такие операции, как вычисление степени совпадения строк, степени совпадения токенов и т. д., а также может легко сопоставлять записи, сохраненные в разных базах данных.
Установить:
$ pip install fuzzywuzzy
пример:
from fuzzywuzzy import fuzz
from fuzzywuzzy import process
# 简单匹配度
fuzz.ratio("this is a test", "this is a test!")
97
# 模糊匹配度
fuzz.partial_ratio("this is a test", "this is a test!")
100
Более интересные примеры можно найти наРепозиторий GitHubоказаться.
PyFlux
Анализ временных рядов — одна из самых распространенных задач в области машинного обучения.PyFluxэто библиотека с открытым исходным кодом на Python для обработкипоследовательнопроблема построена. В библиотеке есть отличная коллекция современных моделей временных рядов, включая, помимо прочего,АРИМА, ГАРЧиVARМодель. Короче говоря, PyFlux обеспечивает вероятностный подход к моделированию временных рядов. Стоит попробовать.
Установить
pip install pyflux
пример
Подробное использование и примеры см. на официальномДокументация.
Ipyvolume
Представление результатов также является важным аспектом в науке о данных. Возможность визуализировать результаты будет большим преимуществом. IPyvolume — это библиотека Python, которая может визуализировать трехмерные объемы и графики (например, трехмерные диаграммы рассеяния и т. д.) в ноутбуках Jupyter с минимальной конфигурацией. Но он все еще находится на стадии версии до 1.0. Более подходящая аналогия для объяснения: IPyvolume'svolshowДля 3D-массивов, таких как matplotlibimshowРаботает так же хорошо для 2D-массивов. допустимыйздесьПолучите больше.
使用 pip
$ pip install ipyvolume
使用 Conda/Anaconda
$ conda install -c conda-forge ipyvolume
пример
- анимация
- объемный рендеринг
Dash
Dash — это эффективная среда Python для создания веб-приложений. Он разработан на основе Flask, Plotly.js и React.js. Он связан со многими современными элементами пользовательского интерфейса, такими как раскрывающиеся списки, ползунки и диаграммы. Вы можете напрямую использовать код Python для написания соответствующего анализа без необходимости Используйте javascript. Dash отлично подходит для создания приложений для визуализации данных. Затем эти приложения могут быть отображены в веб-браузере. Руководство пользователя можно найти наздесьПолучать.
Установить
pip install dash==0.29.0 # 核心 dash 后端
pip install dash-html-components==0.13.2 # HTML 组件
pip install dash-core-components==0.36.0 # 增强组件
pip install dash-table==3.1.3 # 交互式 DataTable 组件(最新!)
пример
В приведенном ниже примере показан интерактивный график с раскрывающимся списком. Когда пользователь выбирает значение в раскрывающемся меню, код приложения будет динамически экспортировать данные из Google Finance в Panda DataFrame.Исходный код здесь
Gym
OpenAIThe Gym — это набор инструментов для разработки и сравнения алгоритмов обучения с подкреплением. Он совместим с любой библиотекой числовых вычислений, такой как TensorFlow или Theano. Библиотека Gym — это обязательный инструмент для тестирования набора вопросов, также известных как среды, которые вы можете использовать для разработки своих алгоритмов обучения с подкреплением. Эти среды имеют общий интерфейс, позволяющий писать общие алгоритмы.
Установить
pip install gym
пример
Этот пример будет работатьCartPole-v0
Экземпляр в среде, который имеет 1000 временных шагов, и каждый шаг отображает всю сцену.
ты сможешьздесьПолучить информацию о других средах.
Суммировать
Все эти полезные библиотеки Python для науки о данных подобраны мной вручную, а не распространенные, такие как numpy и pandas. Если вы знаете другие библиотеки, которые можно добавить в список, укажите их в комментариях ниже. Также не забудьте сначала попробовать запустить их.
Если вы обнаружите ошибки в переводе или в других областях, требующих доработки, добро пожаловать наПрограмма перевода самородковВы также можете получить соответствующие бонусные баллы за доработку перевода и PR. начало статьиПостоянная ссылка на эту статьюЭто ссылка MarkDown этой статьи на GitHub.
Программа перевода самородковэто сообщество, которое переводит высококачественные технические статьи из Интернета сНаггетсДелитесь статьями на английском языке на . Охват контентаAndroid,iOS,внешний интерфейс,задняя часть,блокчейн,продукт,дизайн,искусственный интеллектЕсли вы хотите видеть более качественные переводы, пожалуйста, продолжайте обращать вниманиеПрограмма перевода самородков,официальный Вейбо,Знай колонку.