É possível extrair pontos de dados da movimentação de dados médios?
Em outras palavras, se um conjunto de dados tiver apenas médias móveis simples dos 30 pontos anteriores, é possível extrair os pontos de dados originais?
Se sim, como?
É possível extrair pontos de dados da movimentação de dados médios?
Em outras palavras, se um conjunto de dados tiver apenas médias móveis simples dos 30 pontos anteriores, é possível extrair os pontos de dados originais?
Se sim, como?
Respostas:
+1 na resposta da fabee, que está completa. Apenas uma nota para traduzi-lo para R, com base nos pacotes que encontrei para executar as operações em mãos. No meu caso, eu tinha dados que são previsões de temperatura da NOAA em uma base de três meses: jan-fev-mar, fev-mar-abr, mar-abr-maio, etc., e queria dividi-los em (aproximado) mensais, assumindo que a temperatura de cada período de três meses seja essencialmente uma média.
O que funciona muito bem para mim. Obrigado @fabee.
EDIT: OK, traduzindo meu R para Python, recebo:
(O que demorou muito mais para depurar do que a versão R. Primeiro, porque eu não estou tão familiarizado com Python quanto com R, mas também porque R é muito mais utilizável interativamente.)
fonte
Eu tento colocar o que o whuber disse em resposta. Digamos que você tenha um vetor grande com n = 2000 entradas. Se você calcular uma média móvel com uma janela de comprimento ℓ = 30 , poderá escrever isso como uma multiplicação da matriz vetorial y = A x do vetor x com a matrizx n=2000 ℓ=30 y=Ax x
que possui que são deslocados à medida que você avança pelas linhas até que os 30 atinjam o final da matriz. Aqui, o vetor médio y tem dimensões de 1970. A matriz tem 1970 linhas e30 30 y 1970 colunas. Portanto, não é invertível.2000
Muitos programas numéricos oferecem pseudo-inversos (por exemplo, Matlab, numpy em python, etc.).
Aqui seria o código python para gerar os sinais do meu exemplo:
Espero que ajude.
fonte