[导读] 在嵌入式产品开发中,有时会需要利用一些数学统计的一些知识,并利用代码的方式实施在产品的应用中。有人会说均值有啥好聊的,不就是加起来除一下嘛?不妨来读一读。
本文目的不是数学,而在于分享如何进行工程应用实现。
什么是均值?
对于离散数据集,算术平均值也称为期望值或简称为平均值,是离散数据集合的中心值。假设有这样的数据序列:,其均值由下面的式子计算:
对,你说的没错就是加起来求平均。有盆友或许会问,为什么均值有的地方写的是,而这里写成,这其实是有缘由的:
样本均值(sample mean):某类随机变量有限样本的算术平均值。
总体均值(population mean):从随机变量概率分布的角度对随机变量趋势的度量,所以从这个角度而言,下面的公式正是描述了这个概念:
弄这样两个概念有什么必要呢?总体均值反应的是事务的总体规律,实际研究中,往往很难得到所有的数据,比如产品的某项指标规律,如果每一个产品都去测,代价可能极其高昂,实际往往是对产品进行抽样检测。(公式中多写了个X)
大数定律指出样本数量越大,样本均值越接近总体均值
如此一来这就有实用意义了。
均值除了上面这种算术平均值之外,还有几何平均值、谐波均值、功率均值、加权均值、截断均值、函数泛化均值等,有兴趣的可以去了解一下。
如何计算均值?
这里主要讨论对于嵌入式电子系统编程中,样本均值的计算方法以及C代码。分享直接法和递推法计算均值,重点介绍递推法。
直接