基于python实现数据的描述性统计(二)
程序员文章站
2022-07-11 18:03:47
...
基于python实现数据的描述性统计(二)
基于前文理论基础上,本文将利用Python的Numpy和scipy中的stats库实现描述性统计相关内容。
本文使用的工具是Pycharm,对任意数组进行实践。
利用Numpy和Pandas实现数据的描述性统计
主要包括平均值、中位数、众数、极差、方差、标准差、平均差、四分位差、离散系数、偏度和峰度等内容
import numpy as np
import scipy.stats
arr=np.array([45,32,90,56,21,36,75,21,15,26])
Q1=np.percentile(arr,25) #四分位第一位
Q2=np.percentile(arr,50) #四分位第二位
Q3=np.percentile(arr,75) #四分位第三位
print("平均值:",np.mean(arr)) #平均值
print("中位数:",np.median(arr)) #中位数
print("众数:",scipy.stats.mode(arr)) #众数
print("Max-Min:",np.max(arr)-np.min(arr)) #极差
print("极差:",np.ptp(arr)) #极差
print("方差:",np.var(arr)) #方差
print("标准差:",np.std(arr)) #标准差
print('平均差:',np.sum(abs(arr-np.mean(arr)))/len(arr)) #平均差
print("四分位差:",(Q3-Q1)/2) #四分位差等于四分位数第三位减去第一位后再除以2
print('离散系数:',np.std(arr)/np.mean(arr)) #离散系数等于标准差除以平均值
print('偏度:',scipy.stats.skew(arr)) #利用scipy的stats库实现偏度
print('峰度:',scipy.stats.kurtosis(arr)) #峰度
得到的结果数据是:
平均值: 41.7
中位数: 34.0
众数: ModeResult(mode=array([21]), count=array([2]))
Max-Min: 75
极差: 75
方差: 560.01
标准差: 23.664530420018902
平均差: 19.839999999999996
四分位差: 15.5
离散系数: 0.5674947342930192
偏度: 0.8362529058695776
峰度: -0.5574747028940696
上一篇: impala 遇到的坑
推荐阅读
-
Python基于滑动平均思想实现缺失数据填充的方法
-
Python基于多线程实现抓取数据存入数据库的方法
-
python基于xmlrpc实现二进制文件传输的方法
-
Python基于csv模块实现读取与写入csv数据的方法
-
Python实现从SQL型数据库读写dataframe型数据的方法【基于pandas】
-
基于Python实现的微信好友数据分析
-
Python基于二分查找实现求整数平方根的方法
-
作业笔记:基于二次插值的Wolfe-Powell非精确线搜索算法及Python代码实现
-
Python实现基于二叉树存储结构的堆排序算法示例
-
基于Python编写一个计算器程序,实现简单的加减乘除和取余二元运算