pandasql允许您使用 SQL 语法查询pandas数据帧。它的工作原理与 R 中的sqldf 类似。 pandasql旨在为 Python 或pandas的新手提供一种更熟悉的操作和清理数据的方法。

安装

 pip install -U pandasql

基本

pandasql 中使用的主要函数是sqldf。sqldf接受 2 个参数 - 一个 sql 查询字符串 - 一组会话/环境变量(locals()或globals())

指定locals()或globals()可能会变得乏味。您可以定义一个简短的辅助函数来解决此问题。

from pandasql import sqldf
pysqldf = lambda q: sqldf(q, globals())

查询

pandasql使用SQLite 语法。pandasql将自动检测 任何pandas数据帧。您可以像查询任何常规 SQL 表一样查询它们。

$ python
>>> from pandasql import sqldf, load_meat, load_births
>>> pysqldf = lambda q: sqldf(q, globals())
>>> meat = load_meat()
>>> births = load_births()
>>> print pysqldf("SELECT * FROM meat LIMIT 10;").head()
                  date  beef  veal  pork  lamb_and_mutton broilers other_chicken turkey
0  1944-01-01 00:00:00   751    8

更多推荐

Python SQL 教程之 01 pandasql 教程