「日拱一码」010 Python常用库——statistics

目录

平均值相关

mean():计算算术平均值,即所有数值相加后除以数值的个数

fmean():与 mean() 类似,但使用浮点运算,速度更快,精度更高

geometric_mean():计算几何平均值,即所有数值相乘后开n次方根(n为数值的个数)

harmonic_mean():计算调和平均值,即数值个数除以每个数值的倒数之和

median():计算中位数,即将一组数值按大小顺序排列后位于中间的数。如果数值个数为偶数,则返回中间两个数的平均值

median_low():计算中位数的“低值”,即当数值个数为偶数时,返回中间两个数中较小的那个

median_high():计算中位数的“高值”,即当数值个数为偶数时,返回中间两个数中较大的那个

median_grouped():计算分组数据的中位数,假设数据是连续的,并且在每个区间内均匀分布

mode():计算众数,即一组数据中出现次数最多的值。如果有多个众数,会抛出StatisticsError 

multimode():计算众数,返回所有出现次数最多的值,不会抛出异常

离散程度相关

pstdev():计算总体标准差,即每个数值与总体均值差的平方和的平均值的平方根

pvariance():计算总体方差,即每个数值与总体均值差的平方和的平均值

stdev():计算样本标准差,即每个数值与样本均值差的平方和除以(样本个数 - 1)的平方根

variance():计算样本方差,即每个数值与样本均值差的平方和除以(样本个数 - 1)

 其他

quantiles():将数据分成具有相等概率的连续区间,返回分位数列表


Python的 statistics 库是一个用于数学统计的库,提供了很多常用的统计函数,主要可以分为以下几类:

平均值相关

  • mean():计算算术平均值,即所有数值相加后除以数值的个数
  • fmean():与 mean() 类似,但使用浮点运算,速度更快,精度更高
  • geometric_mean():计算几何平均值,即所有数值相乘后开n次方根(n为数值的个数)
  • harmonic_mean():计算调和平均值,即数值个数除以每个数值的倒数之和
  • median():计算中位数,即将一组数值按大小顺序排列后位于中间的数。如果数值个数为偶数,则返回中间两个数的平均值
  • median_low():计算中位数的“低值”,即当数值个数为偶数时,返回中间两个数中较小的那个
  • median_high():计算中位数的“高值”,即当数值个数为偶数时,返回中间两个数中较大的那个
  • median_grouped():计算分组数据的中位数,假设数据是连续的,并且在每个区间内均匀分布
  • mode():计算众数,即一组数据中出现次数最多的值。如果有多个众数,会抛出StatisticsError 
  • multimode():计算众数,返回所有出现次数最多的值,不会抛出异常
import statistics

# 平均值相关
data = [1, 2, 3, 4, 5, 6]
print("Mean:", statistics.mean(data))  # Mean: 3.5
print("Fast Mean:", statistics.fmean(data))  # Fast Mean: 3.5
print("Geometric Mean:", statistics.geometric_mean(data))  # Geometric Mean: 2.993795165523909
print("Harmonic Mean:", statistics.harmonic_mean(data))  # Harmonic Mean: 2.4489795918367347
print("Median:", statistics.median(data))  # Median: 3.5
print("Median Low:", statistics.median_low(data))  # Median Low: 3
print("Median High:", statistics.median_high(data))  # Median High: 4
print("Median Grouped:", statistics.median_grouped(data))  # Median Grouped: 3.5

data_mode = [1, 2, 2, 3, 4]
print("Mode:", statistics.mode(data_mode))  # Mode: 2

data_multimode = [1, 2, 2, 3, 4, 4]
print("Multi Mode:", statistics.multimode(data_multimode))  # Multi Mode: [2, 4]

离散程度相关

  • pstdev():计算总体标准差,即每个数值与总体均值差的平方和的平均值的平方根
  • pvariance():计算总体方差,即每个数值与总体均值差的平方和的平均值
  • stdev():计算样本标准差,即每个数值与样本均值差的平方和除以(样本个数 - 1)的平方根
  • variance():计算样本方差,即每个数值与样本均值差的平方和除以(样本个数 - 1)
import statistics

# 离散程度相关
data = [1, 2, 3, 4, 5, 6]
print("Population Standard Deviation:", statistics.pstdev(data))  # Population Standard Deviation: 1.707825127659933
print("Population Variance:", statistics.pvariance(data))  # Population Variance: 2.9166666666666665
print("Sample Standard Deviation:", statistics.stdev(data))  # Sample Standard Deviation: 1.8708286933869707
print("Sample Variance:", statistics.variance(data))  # Sample Variance: 3.5

 其他

  • quantiles():将数据分成具有相等概率的连续区间,返回分位数列表
import statistics

# 其他
data = [1, 2, 3, 4, 5, 6]
print("Quantiles:", statistics.quantiles(data))  # Quantiles: [1.75, 3.5, 5.25]
# 将数据分成了四个区间:[1, 1.75]、[1.75, 3.5]、[3.5, 5.25]、[5.25, 6]

 

你可能感兴趣的:(「日拱一码」,python,python常用库,statistics)