结合金融时间序列演示Pandas模块的操作(三)
由于 Pandas 是 Python 的外部第三方模块,在使用前需要导入,并查询 Pandas 的版本号信息。
>>>import pandas as pd
>>>pd.__version__ #查询Pandas的版本号
'1.0.1'
示例:从外部Excel文件导入沪深300指数在2018年每个交易日的开盘点位、最高点位、最低点为以及收盘点位数据 (注:数据来源于图书配套资源),并且创建数据库。图3-1为拟导入Excel文件的部分截图。
相关代码如下:
>>>HS300_excel1 = pd.read_excel('C:/Desktop/配套彩图和数据/沪深300指数(2018年).xlsx',sheet_name="Sheet1",header=0,index_col=0) #导入外部数据
一、数据框内部的操作
(一)描述数据框的基本性质
数据框的可视化只是让用户对数据框中数据的分布有一个比较直观的了解,但还需要对数据框的基本性质做进一步的掌握。
1.head 与 tail 函数
head 函数用于查看数据框的头部(最前面5行)数据;tail 函数用于查看数据框的尾部(最末尾5行)数据。
-----------------------------------代 码---------------------------------------
>>>HS300_excel1.head() #运用head函数查看数据框的头部(最前面5行)数据
----------------------------------输出结果-------------------------------------
开盘点位 最高点位 最低点位 收盘点位
日期
2018-01-02 4045.2086 4087.7789 4045.2086 4087.4012
2018-01-03 4091.4607 4140.0543 4088.7302 4111.3925
2018-01-04 4114.1213 4137.6420 4105.8858 4128.8119
2018-01-05 4133.3439 4151.2818 4123.2817 4138.7505
2018-01-08 4140.8545 4166.3182 4127.3081 4160.1595
-----------------------------------代 码---------------------------------------
>>>HS300_excel1.tail() #运用tail函数查看数据框的尾部(最末尾5行)数据
----------------------------------输出结果--------------------------------------
开盘点位 最高点位 最低点位 收盘点位
日期
2018-12-24 3015.4974 3040.3524 3007.3292 3038.1981
2018-12-25 3006.8787 3030.1418 2964.8750 3017.2815
2018-12-26 3012.8690 3029.0608 2996.4829 3002.0327
2018-12-27 3042.9491 3047.2348 2990.5057 2990.5057
2018-12-28 2994.7950 3024.3525 2984.8177 3010.6536
2.index 与 columns 函数
index 函数用于查看数据框的行索引名;columns 函数用于查看数据框的列名。如查看本篇示例中数据框的行索引名和列名,具体代码如下:
-----------------------------------代 码---------------------------------------
>>>HS300_excel1.index #查看行索引名
----------------------------------输出结果-------------------------------------
DatetimeIndex(['2018-01-02', '2018-01-03', '2018-01-04', '2018-01-05',
'2018-01-08', '2018-01-09', '2018-01-10', '2018-01-11',
'2018-01-12', '2018-01-15',
...
'2018-12-17', '2018-12-18', '2018-12-19', '2018-12-20',
'2018-12-21', '2018-12-24', '2018-12-25', '2018-12-26',
'2018-12-27', '2018-12-28'],
dtype='datetime64[ns]', name='日期', length=243, freq=None)
-----------------------------------代 码---------------------------------------
>>>HS300_excel1.columns #查看列名
----------------------------------输出结果--------------------------------------
Index(['开盘点位', '最高点位', '最低点位', '收盘点位'], dtype='object')
3.shape 与 describe 函数
shape 函数用于查看一个数据框由多少行、多少列构成,其输出结果是一个元组,元组的第1个元素代表数据框的行数(不包括列名行),第2个元素代表数据框的列数(不包括行索引);describe 函数则用于描述数据框中金融时间序列的样本量、均值、方差、最值等统计指标。具体示例如下:
-----------------------------------代 码---------------------------------------
>>>HS300_excel1.shape #查看行数和列数
----------------------------------输出结果--------------------------------------
(243, 4)
-----------------------------------代 码---------------------------------------
>>>HS300_excel1.describe() #查看统计指标
----