数据的描述性统计与python实现


使用pandas导入数据


导入需要的包

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib
from scipy.stats import mode
import seaborn as sns
import os

更改工作目录及读取数据

os.chdir(r'C:\Users\Mr.M\notebook')
snd = pd.read_excel("作业数据.xls")

数据可视化,数据为259人的身高数据

from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体
mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题
snd.height.value_counts().sort_index().plot(kind = 'bar')

数据的集中趋势


众数:出现频率最多的取值
中位数:按大小排序后中间那个取值(50%分位数)
平均数:所有数值加总后除以数量
分位数:分位数就是先把一列数按从小到大排序,如果一共有n个数,那么四分之一分位数就是第n* 0.25个数,四分之三分位数就是第n* 0.75个数,以此类推,p分位数就是第n * p个数.如果n * p不是整数则往最接近的较大的整数上归。


print('平均值:',snd.height.mean())
print('中位数:',snd.height.median())
print('众数:',mode(snd.height))#也就是中分位数
print('上四分位数',snd.height.quantile([0.25]))
print('下四分位数',snd.height.quantile([0.75]))
print('最大值:',snd.height.max())
print('最小值:',snd.height.min())
平均值: 171.19379844961242
中位数: 171.0
众数: ModeResult(mode=array([170], dtype=int64), count=array([30]))
上四分位数 0.25    166.0
Name: height, dtype: float64
下四分位数 0.75    176.0
Name: height, dtype: float64
最大值: 188
最小值: 150

盒须图

sns.boxplot( y = 'height', data = snd)


算数平均数:即均值
加权平均数:加权平均值即将各数值乘以相应的权数,然后加总求和得到总体值,再除以总的单位数。加权平均值的大小不仅取决于总体中各单位的数值(变量值)的大小,而且取决于各数值出现的次数(频数),由于各数值出现的次数对其在平均数中的影响起着权衡轻重的作用,因此叫做权数
几何平均数:几何平均数是对各变量值的连乘积开项数次方根


数据的离中趋势


方差:样本方差的定义

标准差:样本方差的算术平方根,定义:

极差:最大值-最小值
平均差:各个变量值同平均数的离差绝对值的算术平均数。
四分位差:上四分位数(Q3,即位于75%)与下四分位数(Q1,即位于25%)的差。
异众比率:异众比率指的是总体中非众数次数与总体全部次数之比。换句话说,异众比率指非众数组的频数占总频数的比例。

print('方差:',snd.height.var())
print('标准差:',snd.height.std())
print('极差:',snd.height.max()-snd.height.min())
print('四分位差:',int(snd.height.quantile([0.75])) - int(snd.height.quantile([0.25])))
print("异众比率:",(1-mode(snd.height)[1][0]/len(snd.height)))
方差: 47.07513648840227
标准差: 6.861132303665501
极差: 38
四分位差: 10
异众系数: 0.8837209302325582

相对离散程度


离散系数:(coefficient of variation),是概率分布离散程度的一个归一化量度,其定义为标准差与平均值之比:

离散系数是衡量资料中各观测值离散程度的一个统计量。当进行两个或多个资料离散程度的比较时,如果度量单位与平均数相同,可以直接利用标准差来比较。如果单位和(或)平均数不同时,比较其离散程度就不能采用标准差,而需采用离散系数来比较

print('离散系数:',np.std(snd.height)/np.mean(snd.height))
离散系数: 0.04000041291305872

分布的形状


偏态系数:用来度量分布是否对称。以平均值与中位数之差对标准差之比率来衡量偏斜的程度:

用SK表示偏斜系数:正态分布左右是对称的,偏度系数为0,偏态系数小于0,因为平均数在众数之左,是一种左偏的分布,又称为负偏。偏态系数大于0,因为均值在众数之右,是一种右偏的分布,又称为正偏

峰态系数:用来度量数据在中心聚集程度,四阶中心矩与σ4的比值作为衡量峰度的指标:

在正态分布情况下,峰度系数值是3,>3的峰度系数说明观察量更集中,有比正态分布更短的尾部;<3的峰度系数说明观测量不那么集中,有比正态分布更长的尾部,类似于矩形的均匀分布,峰度系数的标准误用来判断分布的正态性。峰度系数与其标准误的比值用来检验正态性。如果该比值绝对值大于2,将拒绝正态性。

print('偏度:',snd.height.skew())
print('峰度:',snd.height.kurt())
偏度: -0.2619058504933375
峰度: -0.26616749245337346

可知该班级的身高分布为左偏,峰度不太集中。

数据的描述性统计与python实现相关推荐

  1. python描述性统计工作日上班时代码_数据的描述性统计以及用Python代码实现

    一.数据的描述性统计 对数据的描述性统计主要是指对结构化数据的描述分析,可从三个维度进行分析:数据的集中趋势.数据的离散程度和数据的分布形态. 描述数据集中趋势的指标有:众数.中位数.平均数(包含算数 ...

  2. No.01统计学之数据的描述性统计

    数据的描述性统计主要包括以下几部分: 数据的集中趋势: 众数.中位数.平均数.分位数 算术平均数.加权平均数.几何平均数 数据的离中趋势: 数值型数据:方差.标准差.极差.平均差 顺序数据:四分位差 ...

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

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

  4. R语言rnorm函数生成正太分布数据、使用epiDisplay包的summ函数计算向量数据的描述性统计汇总信息并可视化有序点图(名称、有效值个数、均值、中位数、标准差、最大值、最小值)

    ↵ R语言rnorm函数生成正太分布数据.使用epiDisplay包的summ函数计算向量数据的描述性统计汇总信息并可视化有序点图(名称.有效值个数.均值.中位数.标准差.最大值.最小值) 目录

  5. lecture 3:Python数据的描述性统计

    首先请大家在线下载一些数据:比如贵州茅台2010-01-01至2020-12-31区间收盘价的数据. import tushare as ts #1.先设置数据的接口# ts.set_token('2 ...

  6. 数据科学-描述性统计

    描述性统计 1 集中趋势的度量 集中趋势:指一组数据向某一中心值靠拢的程度,反应了一组数据中心点的位置所在. 1.1 分类数据:众数 众数:一组数据中出现次数最多的变量值.使用 MoM_{o}Mo​ ...

  7. python描述性统计离散型变量_数据的描述性统计(Python3 实现)

    众数(Mode) 众数是统计学名词,在统计分布上具有明显集中趋势点的数值,代表数据的一般水平(众数可以不存在或多于一个).简单来说就是指一组数据中出现次数最多的数据值. import collecti ...

  8. 统计学习二:数据的描述性统计

    参加此统计学习小组主要是巩固 python 语言,故所有笔记都以 python 代码实现. 完整代码见 github : StatisticLearning 如何描述数据的分布?可以从以下三个方面来描 ...

  9. 第一周:数据的描述性统计

    这里写自定义目录标题 1 数据的集中趋势描述 1.1 算数平均值 1.2 几何平均值 1.3 众数 1.4 中位数 2 数据的离散程度描述 2.1 极差 2.2 平均偏差 2.3 方差和标准差 2.4 ...

最新文章

  1. python调用cplex求解_CPLEX的Python中Bender的分解示例
  2. 7天备战蓝桥杯之第一天
  3. sublime 3143 注册码
  4. 发微博/文章设计思路
  5. Python基础(五)
  6. PHP统计链接跳转的次数,如何在PHP页面统计某链接的点击数
  7. AMD深度学习库MIOpen更新,支持CNN加速
  8. Java map转JSON
  9. 微电子专业要学c语言吗,微电子技术专业学什么?
  10. golang操作sqlite3
  11. Holt Winter时间序列模型
  12. 多电脑切换器(KVM切换器)工作原理
  13. 爬取新浪微博热搜排行
  14. 头部 CT 图像三维重建
  15. springboot整合bboss操作elasticsearch
  16. Android实现SSH Client
  17. 控制科学与工程(自动化)保研经验【2】——南开、同济篇
  18. OAI 5G NR搭建gNB和UE(更新中)
  19. 华为ensp---AC三层旁挂组网实验(参照华为官方手册)
  20. 电子工程师踩过的这些坑,你踩过几个?

热门文章

  1. python 线程终止后再启动
  2. redis启动、关闭命令
  3. 【NP问题】P问题,NP问题,NPC问题,NPH问题
  4. 2016中国软件行业发展趋势及网络化发展分析【图】
  5. 设备通过国标GB28181/海康Ehome接入EasyCVR,视频无法打开的原因分析及解决方法
  6. 鸽巢原理 Ramsey数
  7. 【数据库MySQL】
  8. 25岁以后还适合花钱学编程,当程序员吗?
  9. (转载)OpenNI最新安装教程(图文教程)
  10. MySQL添加多个管理地址_mysql如何绑定多个ip地址?