1. 书籍和文中所提到的数据会在文末提供百度云下载,所有数据都不会有加密,可以放心下载使用

2. 文中计算的结果与书中不同是由于数据使用的时间段不同

目录

1. 准备数据

2. 绘制频数直方图

3. 数据的位置

4. 数据的离散度


1. 准备数据

原始数据 600000.csv 600050.csv 601398.csv 三个文件里是收盘价,通过收盘价计算日收益率

import pandas as pd
# 中国工商银行   ICBC   601398
# 浦发银行  SPDB  600000
# 中国联通  ChinaUnicom  600050
df_601398 = pd.read_csv('./601398.csv',encoding='utf-8')
df_600000 = pd.read_csv('./600000.csv',encoding='utf-8')
df_600050 = pd.read_csv('./600050.csv',encoding='utf-8')
df_601398.head()

df_601398['o_date'] = df_601398['tradeDate']
df_601398['o_date'] = pd.to_datetime(df_601398['o_date'])
df_601398.sort_values(by='o_date',ascending=True,inplace=True)
# daily_returns 日收益率
df_601398['daily_returns'] = (df_601398['closePrice']-df_601398['closePrice'].shift(1))/df_601398['closePrice'].shift(1)
df_601398.head()

df_600000['o_date'] = df_600000['tradeDate']
df_600000['o_date'] = pd.to_datetime(df_600000['o_date'])
df_600000.sort_values(by='o_date',ascending=True,inplace=True)
df_600000['daily_returns'] = (df_600000['closePrice']-df_600000['closePrice'].shift(1))/df_600000['closePrice'].shift(1)df_600050['o_date'] = df_600050['tradeDate']
df_600050['o_date'] = pd.to_datetime(df_600050['o_date'])
df_600050.sort_values(by='o_date',ascending=True,inplace=True)
df_600050['daily_returns'] = (df_600050['closePrice']-df_600050['closePrice'].shift(1))/df_600050['closePrice'].shift(1)# 中国工商银行  gsyh
df_601398.rename(columns={'daily_returns':'gsyh'},inplace=True)
# 浦发银行  pfyh
df_600000.rename(columns={'daily_returns':'pfyh'},inplace=True)
# 中国联通 zglt
df_600050.rename(columns={'daily_returns':'zglt'},inplace=True)df_601398 = df_601398.loc[:,['tradeDate','gsyh']]
df_600000 = df_600000.loc[:,['tradeDate','pfyh']]
df_600050 = df_600050.loc[:,['tradeDate','zglt']]

合并到一个表中,按日期对齐

three_df = pd.merge(df_601398,df_600000,how='inner',on='tradeDate')
three_df = pd.merge(three_df,df_600050,how='inner',on='tradeDate')
three_df.head()

three_df.to_csv('chapter_13_dailyreturns.csv',encoding='utf-8')

2. 绘制频数直方图

import matplotlib.pyplot as plt
# 频数直方图
gsyh = three_df.gsyh
plt.hist(gsyh)

3. 数据的位置

概念:

样本平均数(Sample Mean)、中位数(Median)、众数(Mode)、百分位数(Percentile)

# 平均数
three_df.zglt.mean()
# out: 0.0004284562650822751# 中位数
three_df.zglt.median()
# out: 0.0# 众数
three_df.zglt.mode()
# out:0    0.0
#     dtype: float64# 上下四分位数
[three_df.zglt.quantile(i) for i in [0.25,0.75]]
# out: [-0.010317115551694248, 0.010245151847786325]

4. 数据的离散度

概念:

4.1 极差(Range)

4.2 平均绝对偏差(Mean Absolute Deviation)

4.3 方差(Variance) 和标准差(Standard Deviation)

方差公式:

标准差公式:

# 极差
three_df.zglt.max()-three_df.zglt.min()
# out: 0.2016438874062682# 平均绝对偏差
three_df.zglt.mad()
# out: 0.015984757661984345# 方差
three_df.zglt.var()
# out: 0.0005796109187107064# 标准差
three_df.zglt.std()
# out: 0.024075109941819713

PS:

链接:https://pan.baidu.com/s/1Jck5WqDunfyph18UvguJ5g 
提取码:5fo3

书籍

链接:https://pan.baidu.com/s/1xJD85-LuaA9z-Jy_LU5nOw 
提取码:ihsg

统计学基础_13描述性统计相关推荐

  1. 【T】大数据统计学基础:描述性统计

    引入:统计学是应用,数理统计是其理论基础. 数据的集中趋势程度 平均数:平均水平 中位数:中等水平 众数:一般水平 数据的离散程度 方差:数据离中心(平均数)越远越离散 标准差:避免单位平方引起的度量 ...

  2. pandas基础(part3)--描述性统计

    学习笔记,这个笔记以例子为主. 开发工具:Spyder 文章目录 numpy描述性统计 Pandas描述性统计 numpy描述性统计 数值型数据的描述性统计,主要包括了计算数值型数据的完整情况.最小值 ...

  3. 统计正数和负数的个数然后计算这些数的平均值_描述性统计-统计学基础

    前言 所谓"工欲善其事必先利其器",作为一名数据分析师,统计学知识就是手中的"器",亦是数据分析的基础.在日常工作中统计学知识用到最多的就是描述性统计方法,有些 ...

  4. 统计学基础1:描述性统计(数据的离散度、极差、方差、标准差)

    python 统计学基础1:描述性统计 一.频数 二.数据的位置(平均数.中位数.众数.百分位数) 三.数据的离散度(极差.偏差.方差.标准差) 3.1.极差(Range) 3.2 .平均绝对偏差(M ...

  5. 统计学之数据的描述性统计(基础)

    数据的描述性统计 一篇笔记,至少我还在努力 目录: 数据的集中趋势: 众数,中位数,平均数,分位数,极差 算术平均数,加权平均数,几何平均数 数据的离中趋势: 数值型数据:方差,标准差,极差,平均差 ...

  6. 数据挖掘之统计学基础(1):【理论】描述性统计

    0x00前言 描述性统计是一种汇总统计,用于定量描述或总结信息集合的特征.描述性统计的对象既可以是总体,也可以总体的一部分即是样本. 描述性统计分为集中趋势和离散趋势. 0x01集中趋势 集中趋势又称 ...

  7. 统计学之描述性统计(一)

    统计学之描述性统计(一) 1.描述性统计分析 描述性统计分析主要是对所收集的数据进行分析,得出反映客观现象的各种数量特征的一种分析方法,它包括数据的集中趋势分析.数据离散程度分析.数据的频数分布分析等 ...

  8. 应用统计学与R语言实现学习笔记(三)——描述性统计

    Chapter 3 Descriptive Statistics 本篇是第三章,内容是描述性统计.同时在这一章会开始渗透R语言的相关内容.但整体还是以理论为主. Chapter 3 Descripti ...

  9. python数据分析及可视化(一)课程介绍以及统计学的应用、介绍、分类、基本概念及描述性统计

    数据分析及可视化介绍 这门课涉及多个库,其中Numpy用于数值运算:Pandas用于数据处理:Matplotlib.Seaborn.Pyecharts用于数据可视化. 数据分析介绍 概念 用适当的统计 ...

最新文章

  1. [转载]ArcMap中如何自制符号库(二)
  2. mysql 常见错误_mysql常见的错误提示问题处理小结
  3. 6、检查约束(CHECK)
  4. win10怎么设置开机启动项目_开机启动项怎么设置呢?禁用自启动程序
  5. 13.小结Action
  6. docker数据持久化数据卷
  7. svn php改客户端密码_记录VisualSVNServer配置在线密码修改功能
  8. 现在写程序要像蚊子一样WZ132
  9. 深度学习中拟合是什么意思?
  10. html页面插歌,怎样在HTML播放器里插入歌曲
  11. Usage of #pragma
  12. JavaScript 3D动画库three.js入门篇
  13. linux磁盘分区详解
  14. Python 教程推荐
  15. requests使用cookie模拟登陆豆瓣
  16. inspects a maven model for resolution problems
  17. pytest接口自动化测试框架搭建
  18. The_Last_Geass
  19. 安全运营(SOC)概述
  20. 第二十二届中国文旅全球论坛新闻发布会在穗召开

热门文章

  1. 大数据产品开发流程规范_大数据开发流程规范化(最新数据流图及相关数据技术分析)...
  2. 电力窃漏电用户自动识别(SPSS Modeler)
  3. 收编娘内幕整合版(高质量PDF版)
  4. Docker的上手(Ubuntu140.4 Mate)
  5. Oracle的12c版本打补丁
  6. java 与 汇编_清华大学出版社-图书详情-《汇编语言与计算机体系结构——使用C++和Java》...
  7. 程序员软件开发 面试常见问题
  8. 2021年Android工作或更难找,Android校招面试指南
  9. Maya Python脚本导出OBJ
  10. 公司辞退了一名员工,虽然他是元老级别