Tushare原学习文档(八 数据存储)

 转tushare原网址:网址:http://tushare.org/trading.html#id2
import tushare as ts

1.csv 格式 

import tushare as ts
df = ts.get_hist_data('601998')
df.to_csv('C:/Users/lalala/Desktop/Tomato/Hundreds of millions/2018.10.17/c.csv',columns=['open','high','low','close']) # colunms 保存指定的列索引

 

参数说明:

  • path_or_buf: csv文件存放路径或者StringIO对象
  • sep : 文件内容分隔符,默认为,逗号
  • na_rep: 在遇到NaN值时保存为某字符,默认为’‘空字符
  • float_format: float类型的格式
  • columns: 需要保存的列,默认为None
  • header: 是否保存columns名,默认为True
  • index: 是否保存index,默认为True
  • mode : 创建新文件还是追加到现有文件,默认为新建
  • encoding: 文件编码格式
  • date_format: 日期格式

 

 

2.保存excel格式

import tushare as ts
df = ts.get_hist_data('601998')
df.to_excel('C:/Users/lalala/Desktop/Tomato/Hundreds of millions/2018.10.17/e.xlsx',startrow=3,startcol=6) #startrow=3 startcol=6 是指从第三行第六列开始插入数据

参数说明:

  • excel_writer: 文件路径或者ExcelWriter对象
  • sheet_name:sheet名称,默认为Sheet1
  • sep : 文件内容分隔符,默认为,逗号
  • na_rep: 在遇到NaN值时保存为某字符,默认为’‘空字符
  • float_format: float类型的格式
  • columns: 需要保存的列,默认为None
  • header: 是否保存columns名,默认为True
  • index: 是否保存index,默认为True
  • encoding: 文件编码格式
  • startrow: 在数据的头部留出startrow行空行
  • startcol :在数据的左边留出startcol列空列

 

 3.保存成json格式

import tushare as ts 
df = ts.get_hist_data('601998')
df.to_json('C:/Users/lalala/Desktop/Tomato/Hundreds of millions/2018.10.17/j.json')

参数说明:

  • path_or_buf: json文件存放路径
  • orient:json格式顺序,包括columns,records,index,split,values,默认为columns
  • force_ascii: 将字符转ASCII,默认为True

 

4.保存成HDF5格式

import tushare as ts 
df = ts.get_hist_data('601998')
df.to_hdf('C:/Users/lalala/Desktop/Tomato/Hundreds of millions/2018.10.17/j.h5','601998') # 注意在保存hdf的格式时 ,要在路径后加上查询的股票代码

参数说明:

  • path_or_buf: 文件路径或者HDFStore对象
  • key:HDF5中的group标识
  • mode : 包括 {‘a’追加, ‘w’写入, ‘r’只读, ‘r+’等同于a但文件必须已经存在}, 默认是 ‘a’
  • format:‘fixed(f)|table(t)’,默认‘fixed’,f适合快速读写,不能追加数据 t适合从文件中查找和选择数据
  • append: 适用于table(t)模式追加数据,默认Flase
  • complevel: 压缩级别1-9, 默认0
  • complib: 压缩类型{‘zlib’, ‘bzip2’, ‘lzo’, ‘blosc’, None}默认None

5.保存到mysql数据库

from sqlalchemy import create_engine
engine = create_engine('mysql+pymysql://root:密码@ip地址/数据库名称?charset=utf8')
df = pro.stock_basic(exchange_id='', list_status='L', fields='ts_code,symbol,name,area,industry,list_date')
df.to_sql('表名称',engine,if_exists='replace',index=False)

参数说明:

  • name:表名,pandas会自动创建表结构
  • con:数据库连接,最好是用sqlalchemy创建engine的方式来替代con
  • flavor:数据库类型 {‘sqlite’, ‘mysql’}, 默认‘sqlite’,如果是engine此项可忽略
  • schema:指定数据库的schema,默认即可
  • if_exists:如果表名已存在的处理方式 {‘fail’, ‘replace’, ‘append’},默认‘fail’
  • index:将pandas的Index作为一列存入数据库,默认是True
  • index_label:Index的列名
  • chunksize:分批存入数据库,默认是None,即一次性全部写人数据库
  • dtype:设定columns在数据库里的数据类型,默认是None

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值