Se você vir essa mensagem, seu navegador desativou ou não aceita JavaScript. Para usar os recursos completos deste sistema de ajuda, como pesquisa, seu navegador deve ter o suporte a JavaScript habilitado. Médias móveis ponderadas com médias móveis simples, cada valor de dados no quotwindowquot em que o cálculo é realizado tem um significado ou peso igual. É frequentemente o caso, especialmente na análise de dados de preços financeiros, que mais dados cronologicamente recentes devem ter um peso maior. Nesses casos, a média média móvel ponderada (ou o potencial móvel exponencial - veja o tópico a seguir) é muitas vezes preferida. Considere a mesma tabela de valores de dados de vendas por doze meses: para calcular uma média móvel ponderada: Calcule quantos intervalos de dados participam do cálculo da Média Mover (ou seja, o tamanho do quotwindowquot do cálculo). Se a janela de cálculo for dita n, então o valor de dados mais recente na janela é multiplicado por n, o próximo mais recente multiplicado por n-1, o valor anterior ao multiplicado por n-2 e assim por diante para todos os valores na janela. Divida a soma de todos os valores multiplicados pela soma dos pesos para dar a média móvel ponderada sobre essa janela. Coloque o valor da média móvel ponderada em uma nova coluna de acordo com o posicionamento de médias avançadas descrito acima. Para ilustrar estas etapas, considere se é necessária uma média móvel de vendas de 3 meses em dezembro (usando a tabela acima de valores de vendas). O termo quot3-monthquot implica que o quotwindowquot de cálculo é 3, portanto, o algoritmo de cálculo da média móvel ponderada para este caso deve ser: Ou, se uma Média de Movimento Ponderada de 3 meses fosse avaliada em toda a gama original de dados, os resultados seriam : Média média média de rotação ponderada de 3 meses com funções analíticas do Oracle Este pequeno exemplo irá demonstrar como usar as funções analíticas do Oracles para obter a média móvel. Primeiro, você precisa criar e carregar uma tabela que contenha uma média média de cada mês em Edimburgo nos anos 1764-1820. O script para fazer isso pode ser encontrado aqui. Depois de preencher esta tabela, use esta declaração para encontrar a temperatura média nos últimos 12 meses para cada mês no conjunto de resultados: O resultado (encurtado) é: as segunda e terceira colunas são o mês e o ano. A primeira coluna é a temperatura média para este mês, a última coluna é a média das temperaturas médias atuais e dos últimos 11 meses. Usando uma média móvel simples para suavizar os dados é uma técnica bastante popular. É muito ruim o principal exemplo na Ajuda do SQL Anywhere está longe de ser simples: o que torna esse exemplo tão complexo Além da declaração do problema, isto é: calcular a média móvel de todas as vendas de produtos, por mês, no ano 2000. Heres o que faz É complexo: duas referências à função AVG (), um GRUPO BY (que, por si só, faz praticamente qualquer SELECIONAR um scratcher principal),. Uma cláusula WINDOW Stealth uma cláusula WINDOW que nem usa a palavra-chave WINDOW. Então, para os não iniciados (as pessoas que precisam de exemplos mais do que ninguém), não é óbvio que um WINDOW esteja envolvido. Não é apenas qualquer cláusula WINDOW, tenha em atenção você, mas que inclui todos os componentes que você pode codificar em uma cláusula WINDOW: a PARTITION BY, RANGE. Não uma cláusula ROWS simples, mas uma cláusula RANGE completo, uma que possui um relacionamento íntimo com o ORDER BY. Eu sei o que é uma linha, mas o que o redacto é uma GAMA Mas aguarde, há mais: a escolha de GAMA sobre ROWS neste exemplo é fundamental para a operação correta da consulta. (Para uma discussão mais completa sobre este exemplo específico, veja o Exemplo 23 - Computação de uma Média em Movimento no excelente papel branco OLAP de Glenn Paulleys). Agora, vamos voltar à pista: Uma Média Mínima Realmente Simples O seguinte exemplo mostra 10 dias de valor Dados em conjunto com a média móvel do valor de hoje e dos dias de ontem: a cláusula WINDOW nas linhas 21 a 23 define uma janela em movimento que contém duas linhas: a linha de hoje (LUGAR ATUAL) e a linha de ontem (1 PRECEDING): a cláusula WHINDOW ORDER BY determina o que PRECEDING significa (a linha anterior por t. entrydate) ea cláusula ROWS determina o tamanho da janela (sempre duas linhas). A expressão AVG (t. value) OVER twodays na linha 19 refere-se à cláusula WINDOW pelo nome, e informa ao SQL Anywhere que calcula a média dos dois valores de t. value que existem na janela deslizante de 2 filas, para cada um Linha no conjunto de resultados. Então, para 2012-02-02 a média de 10 e 20 é 15.000000, para 2012-02-03 a média de 20 e 10 é 15.000000, para 2012-02-04 a média de 10 e 30 é 20.000000, para 2012- 02-10 a média de 10 e 60 é 35.000000. Ops, e a primeira linha A linha 2012-02-01 não possui uma linha PRECEDING, então qual é a média sobre a janela móvel De acordo com o documento branco de Glenn Paulleys no caso de uma janela em movimento, presume-se que as linhas que contenham Null Os valores existem antes da primeira linha, e após a última linha, na entrada. Isso significa que quando a janela de mudança tem 2012-02-01 como a CORRENTE ATUAL, a 1 linha PRECEDING contém valores NULL. E quando o SQL Anywhere calcula um AVG () que inclui um valor NULL, ele não conta o NULL. Não no numerador ou no denominador ao calcular a média. Sua prova: é por isso que twodayaverage 10.000000 para a primeira linha 2012-02-01. Postado por Breck Carter às 15:47
No comments:
Post a Comment