/ / calcular a média ponderada de séries de tempo - matlab, média ponderada

calcular a média ponderada de séries temporais - matlab, média ponderada

eu tenho um 8760x1 vetor com a série temporal de temperatura ambiente média de 1 hora.

Eu quero calcular a temperatura média ponderada ponderada pela porcentagem de horas em cada nível de temperatura.

O que eu pensei é dividir a faixa de temperatura com:

ceil(Tmax-Tmin)

e depois usar hist.

Existem outras sugestões? Agradeço antecipadamente.

Respostas:

1 para resposta № 1

mean(temperatures) deveria fazer isso.

Como você tem medições horárias, a frequênciade um determinado valor estará refletindo as horas de operação a esse nível de temperatura. Um valor que ocorre com frequência terá automaticamente mais peso na média.


0 para resposta № 2

Vamos dizer que você tem dois vetores que são o mesmo comprimento, um é a temperatura (temp), e o outro é a quantidade de tempo a essa temperatura (time_at_temp). A fórmula da média ponderada é a seguinte:

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