我要解决的问题:计算数据点分布不均匀的某些数据系列的当前平均速度。例如,计算上传的当前速度,其中“上传数量”信号不均匀地到达:
- t = 0,发送 = 0
- t = 5,发送 = 10
- t = 6,发送 = 12
- t = 9,发送 = 20
我要解决的问题:计算数据点分布不均匀的某些数据系列的当前平均速度。例如,计算上传的当前速度,其中“上传数量”信号不均匀地到达:
(last - first) / (time delta between first and last)
这正是平均速度。
除非您忘记告诉我们一些细节,否则您不需要中间的数据点。
您可以通过获取新值和先前值的增量来计算每个时间单位的平均值。
如果你想要多个点的平均值,你可以计算几个点之间的平均值,然后取这些平均值的平均值。
例如:
Current average:
t34 = 9 - 6 = 3
sent34 = 20 - 12 = 8
average34 = 8 / 3 = 2.67
Average of last two time slots:
t23 = 6 - 5 = 1
sent23 = 12 - 10 = 2
average23 = 2 / 1 = 2
average234 = (2 + 2.67) / 2 = 2.33
只需重新调整最新结果
以你为例:
t = 0, sent = 0
t = 5, sent = 10
t = 6, sent = 12
t = 9, sent = 20
当前速度 = (20 -12) / (9 - 6) = 8/3 = 2.666666
您可以使用不同的重新调整间隔大小来降低速度变化的速度(当连接“丢失”“恢复”时)
从噪声数据计算速度的标准方法是应用卡尔曼滤波器。