上一节中,已经得到了1min的非连续数据,众所周知,做股票期货仅仅有1min或tick数据是不够的,需要将其合成为15min、30min、1day的数据,这里讲一下关于pandas里的DateFrame和resample(重采样)函数。
(1)DateFrame
DateFrame是pandas里的常用数据结构,可以将其认为是“表格”在python里的程序语言表示,其基础是Series,即带索引的列表,多个Series可以用zip组成一张表(DateFrame),这种数据结构大大方便了从多个角度对数据进行处理,可以按行、按列、按行索引、按列字段名等进行相关操作。
其次,利用DateFrame处理csv文件具有以下几点优势:
1:由于csv文件即逗号分隔值文件是以纯文本形式存储表格数据,可以用多种软件打开,使用pandas.red_csv读取的文件可以自动转化为DateFrame,很是方便;
2:自定义的索引通常能给数据处理带来极大的方便,后面将会使用自定义的索引进行空缺值插入;
3:进行周期频率转换时需要用到DateFrame或Series这种数据结构。
(2)resample
resample函数,顾名思义即进行重采样的函数,将固定频率的数据升采样或降采样,转换为我们需要的周期数据,这里不多赘述其所有的参数,文后有详细的解释。关键之处在于设置索引、标签及区间的方向。
index=pd.date_range(start=None, end=None, periods=None, freq='D', tz=None,
normalize=False, name=None, closed=None