pandas - 文件读取与存储

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/apollo_miracle/article/details/88395541

学习目标

  • 了解Pandas的几种文件读取存储操作
  • 应用CSV方式和HDF方式实现文件的读取和存储
  • 应用:实现股票数据的读取存储

我们的数据大部分存在于文件当中,所以pandas会支持复杂的IO操作,pandas的API支持众多的文件格式,如CSV、SQL、XLS、JSON、HDF5。

注:最常用的HDF5和CSV文件

1 数据读取存储API

1.1 read_csv与to_csv

  • pandas.read_csv(filepath_or_buffer, sep =',' , delimiter = None)
    • filepath_or_buffer:文件路径
    • usecols:指定读取的列名,列表形式
  • DataFrame.to_csv(path_or_buf=None, sep=', ’, columns=None, header=True, index=True, index_label=None, mode='w', encoding=None)
    • path_or_buf :string or file handle, default None
    • sep :character, default ‘,’
    • columns :sequence, optional
    • mode:'w':重写, 'a' 追加
    • index:是否写进行索引
    • header :boolean or list of string, default True,是否写进列索引值
# 读取文件
data = pd.read_csv("./data/stock_day/stock_day.csv", usecols=['open', 'close'])

data[:10].to_csv("./test.csv", columns=['open'], index=False, mode='a', header=False)

1.2 read_hdf与to_hdf

  • pandas.read_hdf(path_or_buf,key =None,** kwargs)

    从h5文件当中读取数据

    • path_or_buffer:文件路径
    • key:读取的键
    • mode:打开文件的模式
    • return:Theselected object
close = pd.read_hdf("./data/stock_plot/day_close.h5")

a = close[['000001.SZ', '000002.SZ']]

a.to_hdf("./test.h5", key="x")
b = pd.read_hdf("./test.h5", key="x")

如果读取的时候出现以下错误

需要安装安装tables模块避免不能读取hdf文件

pip install tables

2 拓展

优先选择使用hdf文件存储

  • hdf在存储的是支持压缩,使用的方式是blosc,这个是速度最快的也是pandas默认支持的
  • 使用压缩可以提磁盘利用率,节省空间
  • hdf还是跨平台的,可以轻松迁移到hadoop 上面

猜你喜欢

转载自blog.csdn.net/apollo_miracle/article/details/88395541