pandas和数据库进行交互(以mysql为例)
2016-07-17 22:34
1751 查看
pandas提供了将数据便捷存入关系型数据库的方法
在新版的pandas中,主要是以sqlalchemy方式与数据库建立链接
支持Mysql、postgresql、Oracle、MS SQLServer、SQLite等主流数据库
本例以MySql为代表,展示将从tushare中获取到的股票数据存入数据库的方法
其他类型数据库请参考sqlalchemy官方文档的create_engine部分
1、用到的模块
TuShare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工到数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据。
考虑到python pandas包在金融量化分析中体现出的优势,TuShare返回的绝大部分的数据格式都是pandas DataFrame类型,非常便于用pandas/NumPy/Matplotlib进行数据分析和可视化。
3、进行交互
4、存入之前和存入之后进行比较
存入前DataFrame的info:
存入后DataFrame的info:
按上面的方式读取之后还要进行进一步处理才能还原成之前的DataFrame(需要把date设为索引),用下面的读取方式进行读取就和原来的数据一样了:
参考资料:
http://jingyan.baidu.com/article/3065b3b68d7fb5becff8a494.html
在新版的pandas中,主要是以sqlalchemy方式与数据库建立链接
支持Mysql、postgresql、Oracle、MS SQLServer、SQLite等主流数据库
本例以MySql为代表,展示将从tushare中获取到的股票数据存入数据库的方法
其他类型数据库请参考sqlalchemy官方文档的create_engine部分
1、用到的模块
import tushare as ts import pandas as pd from sqlalchemy import create_engine2、tushare中的数据展示
TuShare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工到数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据。
考虑到python pandas包在金融量化分析中体现出的优势,TuShare返回的绝大部分的数据格式都是pandas DataFrame类型,非常便于用pandas/NumPy/Matplotlib进行数据分析和可视化。
3、进行交互
df = ts.get_hist_data('000875')#读取数据,格式为DataFrame engine = create_engine('mysql://root:pwd@192.168.226.148/tushare?charset=utf8')#用sqlalchemy创建引擎 df.to_sql('tick_data',engine,if_exists='append')#存入数据库,这句有时候运行一次报错,运行第二次就不报错了,不知道为什么 df1 = pd.read_sql('tick_data',engine)#从数据库中读取表存为DataFrame
4、存入之前和存入之后进行比较
存入前DataFrame的info:
存入后DataFrame的info:
按上面的方式读取之后还要进行进一步处理才能还原成之前的DataFrame(需要把date设为索引),用下面的读取方式进行读取就和原来的数据一样了:
df1 = pd.read_sql('tick_data',engine,index_col='date',parse_dates=['date'])parse_dates参数可以不填的,因为tushare中读出来的DataFrame的索引也不是datetime格式的。
参考资料:
http://jingyan.baidu.com/article/3065b3b68d7fb5becff8a494.html
相关文章推荐
- 创建和操作表
- MySQL数据表修复, 如何修复MySQL数据库(MyISAM / InnoDB)
- MySQL数据表修复, 如何修复MySQL数据库(MyISAM / InnoDB)
- varchar长度需要是2的倍数吗?
- MYSQL索引:对聚簇索引和非聚簇索引的认识
- 关于mysql一些问题。
- mysql权限管理
- MySQL数据库(4)----生成统计信息
- MYSQL基础知识及案例分析
- MySQL 5.7 深度解析: JSON数据类型使用
- MySQL 5.7 深度解析: 临时表空间
- 用Systemtap探索MySQL
- MySQL 5.6 for Windows 解压缩版配置安装(转)
- MySql优化
- mysql性能优化-慢查询分析、优化索引和配置
- Mysql的数据类型
- Mysql存储引擎
- MySQL数据库(3)----设置和使用自定义变量
- 一个简单的全文搜索引擎
- 【基础知识思考整理】MySQL数据库中的超时值timeout