计算平均数

本文介绍了算术平均数、几何平均数、调和平均数和平方平均数的计算公式及其应用场景。算术平均数易受极端值影响,适合一般数据;几何平均数适用于比率数据的平均;调和平均数常用于计算平均速率;平方平均数则用于衡量数据与某一值的平均差。代码示例展示了四种平均数的Python实现。
摘要由CSDN通过智能技术生成

算术平均数(Arithmetic Mean)

1.计算公式
2.优点:相比于中位数、众数,更少收到随机因素的影响
3.缺点:更容易收到极端值(biased value)的影响

几何平均数(Geometric Mean)

1.计算公式
2.优点:适用于对比率数据的平均,主要用于计算数据平均增长率

调和平均数(Harmonic Mean)

1.计算公式
2.优点:计算平均速率,感觉很多paper都在用,用于计算平均速率

平方平均数(Quadratic Mean)

1.计算公式:
2.优点:是2次方的广义平均数的表达式。可以定义在连续区间。常用来计算一组数据与某个数据之间的平均差。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2021/3/11 22:37
# @Author  : LaoChen




from math import *

def ArithmeticMean(data):
    len_d = float(len(data))
    result = sum(data) / len_d
    return result

def GeometricMean(data):
    len_d = len(data)
    product = 1.0
    for i in range(len_d):
        product = product * data[i]
    # the next line is equal to calculate the n-root
    result = product ** (1.0/len_d)
    return result



def HarmonicMean(data):
    len_d = len(data)
    x = [1.0/data[i] for i in range(len_d)]
    result = float(len_d) / sum(x)
    return result

def QuadraticMean(data):
    len_d = len(data)
    x = [data[i] * data[i] for i in range(len_d)]
    result = sqrt(sum(x) / float(len_d))
    return result


if __name__ == "__main__":
    data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    print("Scenario used in the test:", data)
    print("The arithmetic mean:", ArithmeticMean(data))
    print("The geometric mean:", GeometricMean(data))
    print("The Harmonic mean:", HarmonicMean(data))
    print("The Quadratic mean:", QuadraticMean(data))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值