Python Statistics 模块
statistics 模块提供了用于计算平均数、中位数和其他描述性统计量的简单工具。
该模块从 Python 3.4 开始加入标准库。
import statistics
当你需要对一小组数字做常见统计计算时,可以使用 statistics。如果是更高级的数据分析,NumPy 和 pandas 更强大,但它们不属于标准库。
mean()
import statistics
scores = [80, 90, 95, 100]
print(statistics.mean(scores))
91.25
fmean 会返回浮点数平均值,处理数字数据时通常更快:
import statistics
print(statistics.fmean([1, 2, 3]))
2.0
median()
import statistics
values = [1, 3, 5, 100]
print(statistics.median(values))
4.0
mode()
mode 会返回最常见的值。
import statistics
print(statistics.mode(['python', 'python', 'rust']))
python
如果有多个值并列最常见,multimode 会把它们全部返回:
import statistics
print(statistics.multimode(['red', 'blue', 'red', 'blue']))
['red', 'blue']
stdev()
stdev 用于计算样本标准差。
import statistics
print(round(statistics.stdev([2, 4, 4, 4, 5, 5, 7, 9]), 2))
2.14
处理空数据
对于空输入,大多数函数都会抛出 StatisticsError。
import statistics
try:
statistics.mean([])
except statistics.StatisticsError as error:
print(type(error).__name__)
StatisticsError