传送门:
Python数据科学(一)- python与数据科学应用(Ⅰ)
Python数据科学(二)- python与数据科学应用(Ⅱ)
Python数据科学(三)- python与数据科学应用(Ⅲ)
Python数据科学(四)- 数据收集系列
Python数据科学(五)- 数据处理和数据采集
Python数据科学(六)- 资料清理(Ⅰ)
Python数据科学(七)- 资料清理(Ⅱ)
Python数据科学(八)- 资料探索与资料视觉化
Python数据科学(九)- 使用Pandas绘制统计图表
1.叙述性统计与推论性统计
- 叙述性统计
有系统的归纳数据,了解数据的轮廓
对数据样本做叙述性陈述,例如:平均数、标准偏差、计次频率、百分比
对数据资料的图像化处理,将数据摘要变为图标表 - 推论性统计
资料模型的建构
从样本推论整体资料的概况
相关、回归、单因子变异数、因素分析
1.叙述性统计
1.我们一般有三种方式进行叙述性统计
- 对大多数资料进行分析,80%都是在于如何加总与平均
eg: - 使用SQL做叙述性统计(通过加入限制条件得到我们需要的数据)
select * from tb1 where col1 >= 100 limit 3
2.如何操作数据
- 操作数据我们常常需要
- 分割数据(Split)
- 转换数据(Transformation)
- 聚合数据(Aggregation)
- 探索数据(Exploration)
- 需要如同SQL的语法去操作数据
首先我们需要安装pandas_datareader,pip install pandas_datareader
,pandas_datareader是一个远程获取金融数据的Python工具,它提供了下面几个机构的数据。
import pandas_datareader
pandas_datareader.DataReader(name, data_source=None, start=None, end=None, retry_count=3,
pause=0.001, session=None, access_key=None)
- name:股票名称
- data_source:数据来源,可以是雅虎,谷歌等等
- start:开始日期
- end:截止日期
- retry_count: 如果断开连接重新连接几次
- pause:抓取数据的中间是否需要停顿
- session:是否需要加入session
- access_key:如果接口需要提供access_key,则此项需要填
2.进行读取相关数据
丘老师是使用pandas_datareader.DataReader
来读取的雅虎提供的阿里巴巴股票数据,现在雅虎已经被弃用。这里我使用Tushare
来读取金融数据。
Tushare是一个免费、开源的python财经数据接口包。
import tushare
df = ts.get_index()
df.tail()
备注:返回值说明
- code:指数代码
- name:指数名称
- change:涨跌幅
- open:开盘点位
- preclose:昨日收盘点位
- close:收盘点位
- high:最高点位
- low:最低点位
- volume:成交量(手)
- amount:成交金额(亿元)
df.columns
1.做一些简易的统计
- 针对单列进行统计
- 算出总和:
df['volume'].sum()
- 算出平均:
df['volume'].mean()
- 算出标准差:
df['volume'].std()
- 取得最小值:
df['volume'].min()
- 取得最大值:
df['volume'].max()
- 取得笔数:
df['volume'].count()
- 针对多列进行统计
df[['open', 'close']].min()
2.取得整体叙述性统计
df.describe()
均值,标准差,最大值,最小值等等
3.计算当日大盘指数当日涨跌次数
df['diff'] = df['close'] - df['open']
df['rise'] = df['diff'] > 0
df['fall'] = df['diff'] < 0
可以看到多了差额、涨、跌三列
df[['rise', 'fall']].sum()