Monday 2 December 2019

Simple moving average in python


Eu tenho a seguinte função para calcular SMA em python: Esta função funciona, mas eu acho muito pouco pythonic. Eu não gosto da indexação e contagem Im fazendo, nem a maneira que eu tenho que acrescentar à lista e depois transformá-lo em um array numpy antes de eu devolvê-lo. A razão que eu tenho que lidar com todos esses Nenhum, é porque eu quero retornar uma matriz no mesmo tamanho que a matriz de entrada. Isso torna mais fácil traçar e lidar com um nível geral mais tarde. Eu posso facilmente fazer coisas como esta: Então, todas as idéias sobre como isso pode ser feito mais bonito e mais python perguntou Mar 2 às 11: 13Ok assim que eu estou escrevendo uma classe que irá calcular uma média móvel simples em uma lista de preços. Calcula a média de cada N número de preços sem calcular os primeiros N-1 dias. Isto é o que eu tenho: Eu testei-lo, fazendo um objeto de classe no shell x Simplemovingaverage (3, 1,2,3,4,5,6,7,8,9,10) e, em seguida, fazendo o método de cálculo por x. calcular a saída que eu tenho foi: Assim, a partir da minha lista de números seu único cálculo até 7,8,9 o último número deve ser 9 porque thats a média de 8,9,10 e também deve haver apenas 3 zeros desde N É 3. Esta é a saída Im procurando: perguntou 18 de fevereiro de 14 às 5:32 exatamente eu preciso n-1 zeros, com n como 3 eu recebo dois zeros. O zero é apenas dizer que você pode calcular uma média móvel simples em n dias sem o primeiro n-1. Quando eu mudar o zero para 3939 um espaço vazio, ele me dá 2 espaços vazios e, em seguida, as médias começando em 3, que é o que eu preciso. Quando eu coloco o 1 me dá um espaço vazio e um zero antes que ele comece a calcular a média de 3. Eu acho que você entendeu mal o papel dos zeros. Ndash user2423347 Feb 18 14 at 7: 40Nós introduzimos anteriormente como criar médias móveis usando python. Este tutorial será uma continuação deste tópico. Uma média móvel no contexto da estatística, também chamada de média de rolamento, é um tipo de resposta ao impulso finito. Em nosso tutorial anterior traçamos os valores das matrizes x e y: Let8217s traçam x contra a média móvel de y que chamaremos yMA: Em primeiro lugar, let8217s equalizar o comprimento de ambos os arrays: E para mostrar isso no contexto: Gráfico: Para ajudar a entender isso, let8217s trama dois relacionamentos diferentes: x vs y e x vs MAy: A média móvel aqui é a parcela verde que começa em 3: Compartilhar este: Como este: Navegação Post Leave a Reply Cancelar resposta Very useful I Gostaria de ler a última parte em grandes conjuntos de dados Espero que virá em breve8230 d blogueiros como este: Os exemplos a seguir produz uma média móvel dos valores WINDOW anteriores. Nós truncar o primeiro (WINDOW -1) valores desde que can8217t encontrar a média antes deles. (O comportamento padrão para convolução é assumir que os valores antes do início de nossa seqüência são 0). (Mais formalmente, construímos a seqüência y para a seqüência x onde yi (xi x (i1) 8230. x (em)) n) Isso faz uso da função de convolução numpy8217s. Esta é uma operação de média móvel de propósito geral. Alterar ponderações torna alguns valores mais importantes compensar apropriadamente permite que você visualize a média em torno do ponto em vez de antes do ponto. Em vez de truncar valores, podemos fixar os valores iniciais no lugar, como ilustrado neste exemplo:

No comments:

Post a Comment