[#] [Из песочницы] Pandasql vs Pandas для решения задач анализа данных
habrabot(difrex,1) — All
2016-03-14 17:00:03




# О чем речь?

В этой статье я бы хотела рассказать о применении python-библиотеки [Pandasql][1]. Многие люди, сталкивающиеся с задачами анализа данных, уже, скорее всего, знакомы с библиотекой [Pandas][2]. Pandas позволяет быстро и удобно работать с табличными данными: фильтровать, группировать, делать join над данными; строить сводные таблицы и даже рисовать графики (для простых визуализации достаточно функции [plot()][3], а если хочется чего-то позаковыристее, то поможет библиотека [matplotlib][4]). На Хабре не раз рассказывали о применении этой библиотеки для работы с данными: [раз][5], [два][6], [три][7]. Но по моему опыту далеко не все знают о библиотеке Pandasql, которая позволяет работать с Pandas DataFrames как с таблицами и обращаться к ним, используя язык SQL. В некоторых задачах проще выразить желаемое с помощью декларативного языка SQL, поэтому я считаю, что людям, работающим с данными, полезно знать о наличии такой функциональности. Если говорить о реальных задачах, то я использовала эту библиотеку для решения задачи join'a таблиц по нечетким условиям (необходимо было объединить записи о событиях из разных систем по примерно совпадающему времени, разрыв порядка 5 секунд). Рассмотрим использование этой библиотеки на конкретных примерах. [Читать дальше →][8]

[1]: https://pypi.python.org/pypi/pandasql
[2]: http://pandas.pydata.org/
[3]: http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.plot.html
[4]: http://pandas.pydata.org/pandas-docs/version/0.13.1/visualization.html
[5]: https://habrahabr.ru/post/266289/
[6]: https://habrahabr.ru/post/196980/
[7]: https://habrahabr.ru/post/202090/
[8]: https://habrahabr.ru/post/279213/#habracut