r - 计算累积平均值(平均值)

标签 r average cumulative-sum

我想知道如何计算某些数字的累积平均值。我将举一个简单的例子来描述我在寻找什么。

我有以下号码

vec <- c(1, 2, 3, 4, 5)

如果我计算这些数字的平均值,我会得到 3。

现在,如何做这些数字的累积平均值。

最佳答案

类似于列表的累积总和,我建议:
向量 x 的累积平均 avg 将包含从第一个位置到位置 i 的平均值。

一种方法是通过对所有先前值求和并除以它们的数量来计算每个位置的平均值。

通过重写arithmetic mean的定义作为递归公式。一个得到

avg(1) = x(1)


avg(i) = (i-1)/i*avg(i-1) + x(i)/i;    (i > 1)

为您的向量(或列表、一维数组或您如何称呼它)的每个元素评估此表达式,您将获得累积平均值。

如果您必须计算非常大或非常多的整数的平均值,并且如果您必须存储它们的累积总和会遇到溢出,则这种递归方法会派上用场。

示例

在你的例子中
1, 2, 3, 4, 5

我们得到
1, 1.5, 2, 2.5, 3

关于r - 计算累积平均值(平均值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11074665/

相关文章:

r - 使用 StatET 时,信息显示在浏览器中,而不是 "R Help" Pane 中

c - N到1000(含)的数字的平均值,不包括能被6和17整除的偶数

MySQL:计算按列分组的值的中值

sql - 运行总计 (COUNT) SQL Server

r - R中64后的累计和(Conditional Cumulative sum)

r - 将回归线拟合为 R 中对数轴的图形

r - glmnet 给出与输入不同的 lambda 值序列

javascript - 在 JavaScript 中计算多维数组的总体平均值

R:如何从日期时间添加卷

r - 如何在 Windows 中停止 R 中的命令