使用SQL语句来操作pandas
在python里,可以直接使用SQL语句来操作pandas。适用于有些人难以记住pandas中操作dataframe的语句时,SQL对数据表的操作更接近于我们的自然语言。 使用的工具包是pandasql。 pandasql中的主要函数是sqldf,可以传入两个参数:一个sql查询语句,还有一组环境变量globals()或locals()。
import pandas as pd
from pandas import DataFrame
from pandasql import sqldf, load_meat, load_births
df1 = DataFrame({'name':['ZhangFei', 'GuanYu', 'a', 'b', 'c'], 'data1':range(5)})
pysqldf = lambda sql: sqldf(sql, globals())
sql = "select * from df1 where name ='ZhangFei'"
print(pysqldf(sql))
lambda是用来定义一个匿名函数
lambda argument_list: expression
lambda 的使用格式一般如上,argument_list代表参数,expression代表的是参数表达式