【问题标题】:compute time series weighted average计算时间序列加权平均值
【发布时间】:2014-01-27 09:12:50
【问题描述】:

我有一个带有 1 小时平均环境温度时间序列的 8760x1 向量。

我想计算加权平均温度,按运行百分比加权 每个温度级别的小时数。

我认为是将温度范围划分为:

ceil(Tmax-Tmin)

然后使用hist。

还有其他建议吗? 提前谢谢你。

【问题讨论】:

  • 你描述的不是加权平均。阅读wikipedia - 虽然这不是你所描述的。

标签: matlab weighted-average


【解决方案1】:

mean(temperatures) 应该这样做。

由于您有每小时测量值,给定值的频率将反映该温度水平下的运行小时数。因此,频繁出现的值会自动在平均值中具有更大的权重。

【讨论】:

    【解决方案2】:

    假设您有两个长度相同的向量,一个是温度 (temp),另一个是该温度下的时间量 (time_at_temp)。加权平均公式是这样的:

    wt_avg_temp = sum(temp .* time_at_temp) / sum(time_at_temp);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-08
      • 2021-11-24
      • 1970-01-01
      • 1970-01-01
      • 2012-04-26
      • 2021-11-28
      • 1970-01-01
      • 2010-10-04
      相关资源
      最近更新 更多