Moving average loop


Eu preciso calcular uma média móvel em uma série de dados, dentro de um loop for. Eu tenho que obter a média móvel em N9 dias. A matriz Im computação é uma série de 365 valores (M), que em si é valores médios de outro conjunto de dados. Eu quero traçar os valores médios dos meus dados com a média móvel em um gráfico. Eu procurei um pouco sobre as médias móveis e o comando conv e encontrei algo que eu tentei implementar no meu código. Então, basicamente, eu calculo o meu significado e traço-o com uma média móvel (errada). Eu escolhi o valor de Wts diretamente do site Mathworks, então isso é incorreto. (Fonte: mathworks. nlhelpeconmoving-average-trend-estimation. html) Meu problema, porém, é que eu não entendo o que é esse wts. Alguém poderia explicar Se isso tem algo a ver com os pesos dos valores: isso é inválido neste caso. Todos os valores são ponderados da mesma forma. E se eu estiver fazendo isso inteiramente errado, eu poderia obter alguma ajuda com isso, meus mais sinceros agradecimentos. Perguntou 23 de setembro 14 às 19:05 Usando conv é uma excelente maneira de implementar uma média móvel. No código que você está usando, é o quanto você está pesando cada valor (como você adivinhou). A soma desse vetor deve ser sempre igual a uma. Se você deseja pesar cada valor de forma uniforme e fazer um filtro móvel N de tamanho, então você gostaria de fazer. Usando o argumento válido em conv resultaria em ter menos valores na Ms do que em M. Use o mesmo se você não se importar com os efeitos de Zero preenchimento. Se você tiver a caixa de ferramentas de processamento de sinal, você pode usar o cconv se quiser testar uma média móvel circular. Algo como Você deve ler a documentação conv e cconv para obter mais informações se você não tiver havido. Média em Movimento de Cálculo Este VI calcula e exibe a média móvel, usando um número pré-selecionado. Primeiro, o VI inicializa dois registros de deslocamento. O registro de deslocamento superior é inicializado com um elemento e, continuamente, adiciona o valor anterior com o novo valor. Este registro de deslocamento mantém o total das últimas medições x. Depois de dividir os resultados da função de adicionar com o valor pré-selecionado, o VI calcula o valor médio móvel. O registro de deslocamento de baixo contém uma matriz com a dimensão Média. Este registro de deslocamento mantém todos os valores da medição. A função de substituição substitui o novo valor após cada loop. Este VI é muito eficiente e rápido porque usa a função de elemento de substituição dentro do loop while e ele inicializa a matriz antes de entrar no loop. Este VI foi criado no LabVIEW 6.1. Bookmark amp Share

Comments