Python Pandas pandas.read_sql函数实例用法


Posted in Python onJune 21, 2021

Pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。本文主要介绍一下Pandas中read_sql方法的使用。

pandas.read_sql(sql,con,index_col = None,coerce_float = True,params = None,parse_dates = None,columns = None,chunksize = None)

将SQL查询或数据库表读入DataFrame。

此功能是一个方便的包装read_sql_table和 read_sql_query(为了向后兼容)。它将根据提供的输入委托给特定的功能。SQL查询将被路由到read_sql_query,而数据库表名将被路由到read_sql_table。请注意,委托的功能可能有更多关于其功能的特定说明,此处未列出。

 

参数:       

sql:string或SQLAlchemy可选(选择或文本对象)

要执行的SQL查询或表名。

con:SQLAlchemy可连接(引擎/连接)或数据库字符串URI

或DBAPI2连接(回退模式)

使用SQLAlchemy可以使用该库支持的任何数据库。如果是DBAPI2对象,

则仅支持sqlite3。

index_col:字符串或字符串列表,可选,默认值:无

要设置为索引的列(MultiIndex)。

coerce_float:boolean,默认为True

尝试将非字符串,非数字对象(如decimal.Decimal)的值转换为浮点,

这对SQL结果集很有用。

params:list,tuple或dict,optional,default:None

要传递给执行方法的参数列表。用于传递参数的语法取决于数据库驱动程序。

检查数据库驱动程序文档,

了解PEP 249的paramstyle中描述的五种语法样式中的哪一种。

例如,对于psycopg2,使用%(name)s,所以使用params = {'name':'value'}

parse_dates:list或dict,默认值:None

要解析为日期的列名的列表。

的字典,其中格式字符串是在解析的情况下的strftime兼容的字符串倍,

或是在解析整数时间戳的情况下(d,S,NS,MS,我们)之一。{column_name: format string}

dict of ,其中arg dict对应于关键字参数,特别适用于没有本机Datetime支持的数据库,

例如SQLite。{column_name: arg dict}pandas.to_datetime()

columns:list,默认值:None

从SQL表中选择的列名列表(仅在读取表时使用)。

chunksize:int,默认无

如果指定,则返回一个迭代器,其中chunksize是要包含在每个块中的行数。

返回:

DataFrame(数据帧)

例如

import MySQLdb
mysql_cn= MySQLdb.connect(host='myhost', 
                port=3306,user='myusername', passwd='mypassword', 
                db='information_schema')
df_mysql = pd.read_sql('select * from VIEWS;', con=mysql_cn)    
print 'loaded dataframe from MySQL. records:', len(df_mysql)
mysql_cn.close()

内容扩展:

有没有关于如何使用Pandas中的SQL查询传递参数的示例?

特别是我正在使用SQLAlchemy引擎来连接到PostgreSQL数据库。到目前为止,我发现以下工作:

df = psql.read_sql(('select "Timestamp","Value" from "MyTable" '
                     'where "Timestamp" BETWEEN %s AND %s'),
                   db,params=[datetime(2014,6,24,16,0),datetime(2014,6,24,17,0)],
                   index_col=['Timestamp'])

pandas文档说,params也可以作为一个dict来传递,但我似乎无法让这个工作尝试了:

df = psql.read_sql(('select "Timestamp","Value" from "MyTable" '
                     'where "Timestamp" BETWEEN :dstart AND :dfinish'),
                   db,params={"dstart":datetime(2014,6,24,16,0),"dfinish":datetime(2014,6,24,17,0)},
                   index_col=['Timestamp'])

到此这篇关于Python Pandas pandas.read_sql函数实例用法的文章就介绍到这了,更多相关Python Pandas pandas.read_sql函数详解内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
从零学python系列之教你如何根据图片生成字符画
May 23 Python
Python实现各种排序算法的代码示例总结
Dec 11 Python
利用Python实现Windows定时关机功能
Mar 21 Python
Python编程之event对象的用法实例分析
Mar 23 Python
python常用知识梳理(必看篇)
Mar 23 Python
详解python中executemany和序列的使用方法
Aug 12 Python
Python 中Pickle库的使用详解
Feb 24 Python
浅谈numpy数组中冒号和负号的含义
Apr 18 Python
用python一行代码得到数组中某个元素的个数方法
Jan 28 Python
python实现趣味图片字符化
Apr 30 Python
docker-py 用Python调用Docker接口的方法
Aug 30 Python
pytorch中Schedule与warmup_steps的用法说明
May 24 Python
浅谈Python从全局与局部变量到装饰器的相关知识
Jun 21 #Python
Python-OpenCV教程之图像的位运算详解
Python中的套接字编程是什么?
教你如何使用Python开发一个钉钉群应答机器人
详解Python requests模块
Jun 21 #Python
Python pandas读取CSV文件的注意事项(适合新手)
python简单验证码识别的实现过程
You might like
php绘图中显示不出图片的原因及解决
2014/03/05 PHP
php文件服务实现虚拟挂载其他目录示例
2014/04/17 PHP
ThinkPHP3.1查询语言详解
2014/06/19 PHP
php绘制一个矩形的方法
2015/01/24 PHP
php面向对象与面向过程两种方法给图片添加文字水印
2015/08/26 PHP
js 第二代身份证号码的验证机制代码
2011/05/12 Javascript
模仿百度三维地图的js数据分享
2011/05/12 Javascript
浅谈jQuery事件绑定原理
2015/01/02 Javascript
分享一则JavaScript滚动条插件源码
2015/03/03 Javascript
JavaScript模拟深蓝vs卡斯帕罗夫的国际象棋对局示例
2015/04/22 Javascript
深入浅析同源策略和跨域访问
2015/11/26 Javascript
vue.js整合vux中的上拉加载下拉刷新实例教程
2018/01/09 Javascript
详解webpack babel的配置
2018/01/09 Javascript
vue数据传递--我有特殊的实现技巧
2018/03/20 Javascript
浅谈layui框架自带分页和表格重载的接口解析问题
2019/09/11 Javascript
webgl实现物体描边效果的方法介绍
2019/11/27 Javascript
解决vue项目中出现Invalid Host header的问题
2020/11/17 Javascript
javascript实现移动端轮播图
2020/12/09 Javascript
JS+CSS实现过渡特效
2021/01/02 Javascript
[04:10]2016国际邀请赛中国区预选赛第二日TOP10精彩集锦
2016/06/28 DOTA
[01:28]一分钟告诉你DOTA2 TI9不朽宝藏Ⅱ中有什么!
2019/07/09 DOTA
[19:54]夜魇凡尔赛茶话会 第一期02:看图识人
2021/03/11 DOTA
Python闭包函数定义与用法分析
2018/07/20 Python
解决python中无法自动补全代码的问题
2018/12/04 Python
python3 图片 4通道转成3通道 1通道转成3通道 图片压缩实例
2019/12/03 Python
python语言是免费还是收费的?
2020/06/15 Python
Python变量格式化输出实现原理解析
2020/08/06 Python
Python程序慢的重要原因
2020/09/04 Python
台湾团购、宅配和优惠券:17Life
2017/08/14 全球购物
给面试官的感谢信
2014/02/01 职场文书
公司爱心捐款倡议书
2014/05/14 职场文书
五一晚会主持词
2015/07/01 职场文书
主婚人致辞精选
2015/07/28 职场文书
初二英语教学反思
2016/02/15 职场文书
pycharm无法导入lxml的解决办法
2021/03/31 Python
Python代码,能玩30多款童年游戏!这些有几个是你玩过的
2021/04/27 Python