Python实现描述性统计
该篇笔记由木东居士提供学习小组、资料
描述性统计的概念很好理解,在日常工作中我们也经常会遇到需要使用描述性统计来表述的问题。以下,我们将使用Python实现一系列的描述性统计内容。
有关python环境的安装就次略过。
本次数据集由数据科学家联盟提供,https://pan.baidu.com/s/1lXAnyvSoti-U44MU2fubgw。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline data = pd.read_excel(r'C:\Users\user\Desktop\描述性.xlsx',encoding='UTF-8')
data = data.iloc[:20]
集中趋势 # 计算平均值
# 法一
print("算术平均数:%.2f" %data.mean())
算术平均数:4.40
# 计算平均值
# 法二:几何平均数 data['data'] = data['data'].astype(int)
s = 1
for i in data['data']:
s = i * s
print("几何平均数:%.2f" %np.sqrt(s)) 几何平均数:351941.81
# 众数
# 法一:
print("众数为:%d," %data.mode().iloc[0]) 众数为:4, #众数
# 法二
from scipy.stats import mode
mode_num = mode(data)
print("众数为:%d, 众数的个数为:%d,"%(mode_num[0][0], mode_num[1][0])) 众数为:4, 众数的个数为:4,
# 中位数
# 法一:
print("中位数:%d" %data.median()) 中位数:4 # 中位数
# 法二
print("中位数:%d" %np.percentile(data,50)) 中位数:4 # 中位数
# 法三
print("中位数:%d" %data.quantile(.50)) 中位数:4
离散趋势
# 方差
# 法一:
print("方差:%d" %data.var()) 方差:6 # 方差
# 法二:
s = 0
for i in data['data']:
s = (i - data.mean())**2 + s print("方差:%d" %(s/(len(data)-1))) 方差:6
# 标准差
# 法一
print("标准差:%d" %data.std()) 标准差:2 # 标准差
# 法二:
print("标准差:%d" %np.sqrt(s/(len(data)-1))) 标准差:2
# 极差
data.max() - data.min() data 9
dtype: int32
# 平均绝对离差
M = 0
for i in data['data']:
M += abs(i - data.mean()) print(M/len(data)) data 2.04
dtype: float64
# 上四分位数
# 法一
np.percentile(data,75) 6.0 # 上四分位数
# 法二
data.quantile(.75) data 6.0
Name: 0.75, dtype: float64
# 下四分位数
# 法一
data.quantile(.25) data 2.0
Name: 0.25, dtype: float64 # 下四分位数
# 法二:
np.percentile(data,25) 2.0
# 四分位差
np.percentile(data,75) - np.percentile(data,25) 4.0
# 离散系数
data.std()/data.mean() data 0.582476
dtype: float64
分布的形状
# 偏度
from scipy import stats
stats.skew(data['data']) 0.4264951788847028
# 峰度
stats.kurtosis(data['data']) -0.5821005917159772
# 概括性信息
data.describe() data
count 20.000000
mean 4.400000
std 2.562893
min 1.000000
25% 2.000000
50% 4.000000
75% 6.000000
max 10.000000
参考链接:https://blog.csdn.net/qq_43315928/article/details/102151709
Python实现描述性统计的更多相关文章
- 使用Python进行描述性统计
		
目录 1 描述性统计是什么?2 使用NumPy和SciPy进行数值分析 2.1 基本概念 2.2 中心位置(均值.中位数.众数) 2.3 发散程度(极差,方差.标准差.变异系数) 2.4 偏差程度(z ...
 - Pandas描述性统计
		
有很多方法用来集体计算DataFrame的描述性统计信息和其他相关操作. 其中大多数是sum(),mean()等聚合函数,但其中一些,如sumsum(),产生一个相同大小的对象. 一般来说,这些方法采 ...
 - Pandas | 06 描述性统计
		
有很多方法用来集体计算DataFrame的描述性统计信息和其他相关操作. 其中大多数是sum(),mean()等聚合函数. 一般来说,这些方法采用轴参数,就像ndarray.{sum,std,...} ...
 - Pandas 之 描述性统计案例
		
认识 jupyter地址: https://nbviewer.jupyter.org/github/chenjieyouge/jupyter_share/blob/master/share/panda ...
 - SPSS统计分析过程包括描述性统计、均值比较、一般线性模型、相关分析、回归分析、对数线性模型、聚类分析、数据简化、生存分析、时间序列分析、多重响应等几大类
		
https://www.zhihu.com/topic/19582125/top-answershttps://wenku.baidu.com/search?word=spss&ie=utf- ...
 - \(\S1\) 描述性统计
		
在认识客观世界的过程中,统计学的思想和方法经常起着不可替代的作用.在许多工程及自然科学的专业领域中,包括可靠性分析.质量控制.生物信息.脑科学.心理分析.经济分析.金融风险管理.社会科学推断.行为科学 ...
 - Python获得百度统计API的数据并发送邮件
		
Python获得百度统计API的数据并发送邮件 小工具 本来这么晚是不准备写博客的,当是想到了那个狗子绝对会在开学的时候跟我逼逼这个事情,所以,还是老老实实地写一下吧. Baidu统计API的使 ...
 - python编写文件统计脚本
		
python编写文件统计脚本 思路:用os模块中的一些函数(os.listdir().os.path.isdir().os.path.join().os.path.abspath()等) 实现功能:显 ...
 - Python实现代码统计工具——终极加速篇
		
Python实现代码统计工具--终极加速篇 声明 本文对于先前系列文章中实现的C/Python代码统计工具(CPLineCounter),通过C扩展接口重写核心算法加以优化,并与网上常见的统计工具做对 ...
 
随机推荐
- webStrom中React语法提示,React语法报错处理
			
1,webStrom中React语法报错 ①, 取消Power Save Mode的勾选 File——Power Save Mode ②,webstorm开发react-native智能提示 随便在一 ...
 - SQL Server 2019 新函数Approx_Count_Distinct
			
2019年11月4日微软发布了2019正式版,该版本有着比以往更多强大的新功能和性能上的优势,可参阅SQL Server 2019 新版本. SQL Server 2019具有一组丰富的增强功能和新功 ...
 - [转帖](区块链补习班)ERC20很多人都听过,但ERC是什么你真的了解吗?
			
(区块链补习班)ERC20很多人都听过,但ERC是什么你真的了解吗? http://baijiahao.baidu.com/s?id=1600948969290990883&wfr=spide ...
 - Centos7下JDK1.8的安装
			
1.下载并上传并解压安装包 下载安装包上传到/usr/local目录 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-dow ...
 - C++实现base64编解码
			
Base64是常见的加密算法,代码实现了基于C++的对于base64的编码和解码. 其中注释掉的部分为编码部分,取消注释将解码部分注释掉即可实现编码,反之可以实现解码. #include <st ...
 - Delphi编码与签名【URL编码与解码,Base64编码与解码,MD5加密,HMAC-SHA1、HMAC-SHA224、HMAC-SHA256、HMAC-SHA384和HMAC-SHA512签名】
			
作者QQ:(648437169) 点击下载➨delphi编码与签名 [Delphi编码与签名]URL编码与解码,Base64编码与解码,MD5加密,HMAC-SHA1.HMAC-SHA224.HMAC ...
 - Connection to 天mysql failed. [08001] Could not create connection to database server. Attempted ,报错处理方法
			
https://blog.csdn.net/myzh215219/article/details/90314345 点击图上的DRIVER,然后点击GO TO DRIVER,之后更改合适的驱动. 我的 ...
 - sleep方法动态打印 C语言
			
#include<Windows.h> #include<stdio.h> #include<stdlib.h> #include<string.h> ...
 - 3.将模型添加到 ASP.NET Core MVC 应用
			
添加数据模型类 右键单击 Models 文件夹,然后单击“添加” > “类”. 将类命名“Movie”.向 Movie 类添加以下属性: using System;using System.Co ...
 - 2019 用友网络java面试笔试题 (含面试题解析)
			
本人3年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条. 用友网络等公司offer,岗位是Java后端开发,最终选择去了 用友网络. 面试了很多家公司,感觉大部分公司考察 ...