欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

基于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