Tuesday 1 August 2017

Stata 12 Meses De Média Móvel


Ao calcular uma média móvel em execução, colocar a média no período de tempo médio faz sentido No exemplo anterior, calculamos a média dos primeiros 3 períodos de tempo e colocamos ao lado do período 3. Poderíamos ter colocado a média no meio do Intervalo de tempo de três períodos, isto é, ao lado do período 2. Isso funciona bem com períodos de tempo estranhos, mas não tão bons para períodos de tempo iguais. Então, onde colocamos a primeira média móvel quando M 4 Tecnicamente, a Média Móvel cairá em t 2,5, 3,5. Para evitar esse problema, suavizamos as MAs usando M 2. Assim, suavizamos os valores suavizados. Se medimos um número par de termos, precisamos suavizar os valores suavizados. A tabela a seguir mostra os resultados usando M 4.Stata: Análise de Dados e Estatística Software Nicholas J. Cox, Universidade de Durham, Reino Unido Christopher Baum, Boston College egen, ma () e suas limitações Statarsquos comando mais óbvio para calcular médias móveis é a função ma () de egen. Dada uma expressão, ela cria uma média móvel daquela expressão. Por padrão, é tomado como 3. deve ser estranho. No entanto, como a entrada manual indica, egen, ma () não podem ser combinados pela varlist:. E, por esse motivo, não é aplicável aos dados do painel. Em qualquer caso, fica fora do conjunto de comandos especificamente escritos para séries temporais veja séries de tempo para obter detalhes. Abordagens alternativas Para calcular as médias móveis para os dados do painel, existem pelo menos duas opções. Ambos dependem do conjunto de dados ter sido o tsset de antemão. Isso vale muito a pena fazer: não só você pode economizar-se especificando repetidamente a variável do painel e a variável de tempo, mas o Stata se comporta de forma inteligente com quaisquer lacunas nos dados. 1. Escreva sua própria definição usando gerar Usando operadores de séries temporais, como L. e F.. Dê a definição da média móvel como argumento para uma declaração de geração. Se você fizer isso, você, naturalmente, não está limitado às médias móveis ponderadas (não ponderadas), calculadas por egen, ma (). Por exemplo, as médias móveis de três períodos, igualmente ponderadas, seriam dadas e alguns pesos podem ser facilmente especificados: você pode, claro, especificar uma expressão como log (myvar) em vez de um nome de variável, como myvar. Uma grande vantagem desta abordagem é que a Stata faz automaticamente o que é certo para os dados do painel: os valores de liderança e atraso são elaborados dentro dos painéis, assim como a lógica determina que eles deveriam ser. A desvantagem mais notável é que a linha de comando pode ficar bastante longa se a média móvel envolver vários termos. Outro exemplo é uma média móvel unilateral baseada apenas em valores anteriores. Isso poderia ser útil para gerar uma expectativa adaptativa sobre o que uma variável será baseada apenas em informações até à data: o que alguém poderia prever para o período atual com base nos últimos quatro valores, usando um esquema de ponderação fixa (pode haver um atraso de 4 períodos Especialmente comumente usado com timeseries trimestrais.) 2. Use egen, filter () from SSC Use o filtro de função egen escrito () do egenmore package em SSC. No Stata 7 (atualizado após 14 de novembro de 2001), você pode instalar este pacote, após o qual a ajuda, além disso, aponta para detalhes no filtro (). Os dois exemplos acima serão renderizados (Nesta comparação, a abordagem de geração é talvez mais transparente, mas veremos um exemplo do oposto em um momento.) Os atrasos são um número. Leva a atrasos negativos: neste caso -11 se expande para -1 0 1 ou liderar 1, lag 0, lag 1. Os coeficientes, outro número, multiplicam os itens atrasados ​​ou atrasados ​​correspondentes: neste caso, esses itens são F1.myvar . Myvar e L1.myvar. O efeito da opção de normalização é dimensionar cada coeficiente pela soma dos coeficientes de modo que o coeficiente de coef (1 1 1) seja equivalente aos coeficientes de 13 13 13 e a normalização de coef (1 2 1) seja equivalente a coeficientes de 14 12 14 . Você deve especificar não apenas os atrasos, mas também os coeficientes. Como egen, ma () fornece o caso igualmente ponderado, a principal razão para egen, filter () é suportar o caso pontualmente ponderado, para o qual você deve especificar coeficientes. Também pode-se dizer que obrigar os usuários a especificar coeficientes é uma pressão pouco sobre eles para pensar sobre os coeficientes que eles querem. A justificativa principal para os pesos iguais é, a adivinhar, a simplicidade, mas pesos iguais têm propriedades de domínio de freqüência péssimas, para mencionar apenas uma consideração. O terceiro exemplo acima pode ser qualquer um dos quais é tão complicado quanto a abordagem gerada. Existem casos em que egen, filter () dá uma formulação mais simples do que gerar. Se você quer um filtro binomial de nove séculos, que os climatologistas acham útil, então parece talvez menos horrível do que, e mais fácil de conseguir, do mesmo modo, assim como com a abordagem de geração, egen, filter () funciona corretamente com os dados do painel. Na verdade, como afirmado acima, depende do conjunto de dados ter sido tsset de antemão. Uma dica gráfica Depois de calcular suas médias móveis, você provavelmente vai querer olhar para um gráfico. O comando do usuário tsgraph é inteligente sobre conjuntos de dados tsset. Instale-o em um Stata 7 atualizado por um ssc inst tsgraph. E quanto a subconjunto com se Nenhum dos exemplos acima faz uso de restrições if. Na verdade egen, ma () não permitirá que se especifique. Ocasionalmente, as pessoas querem usar se ao calcular médias móveis, mas seu uso é um pouco mais complicado do que normalmente. O que você esperaria de uma média móvel calculada com se. Vamos identificar duas possibilidades: interpretação fraca: não quero ver nenhum resultado para as observações excluídas. Interpretação forte: eu nem quero que você use os valores para as observações excluídas. Aqui está um exemplo concreto. Suponha que, como consequência de alguma condição, as observações 1-42 estão incluídas, mas não as observações 43. Mas a média móvel para 42 dependerá, entre outras coisas, do valor para a observação 43 se a média se prolongar para trás e para frente e for pelo menos 3, e dependerá de algumas das observações em algumas circunstâncias. Nosso palpite é que a maioria das pessoas iria pela interpretação fraca, mas se isso é correto, egen, filter () não é compatível se também. Você sempre pode ignorar o que você não quer ou mesmo definir valores indesejados a perder depois, usando o substituir. Uma nota sobre resultados faltantes nas extremidades da série Como as médias móveis são funções de atrasos e leads, egen, ma () produz falta onde os atrasos e as derivações não existem, no início e no final da série. Uma opção nomiss força o cálculo de médias móveis mais curtas e não centradas para as caudas. Em contraste, nem gerar nem egen, filter () faz, ou permite, qualquer coisa especial para evitar resultados perdidos. Se algum dos valores necessários para o cálculo estiver faltando, esse resultado está faltando. Cabe aos usuários decidir se e quais são as cirurgias corretivas necessárias para essas observações, presumivelmente depois de olhar para o conjunto de dados e considerando qualquer ciência subjacente que possa ser trazida. Anúncio que eu procurei agora por um tempo e realmente apreciaria alguma ajuda. Eu uso stata12, e eu tenho dados de séries temporais, preciso construir uma variável que será a média da variável x durante o período t-12 para t-2 e a mesma para o desvio padrão. É possível construir um desvio padrão de rolamento que leve o valor 1 de 1 variável, o 2º da variável 2. e o 11º da variável 11 e depois começa a partir de 1. ou seria ótimo se houver uma maneira de construir um Variável que é o retorno cumulativo ao longo de 11 meses como este Última edição por Thomas Maurer 26 de maio de 2014, 04:49. 26 de maio de 2014, 06:43 Se suas observações e variáveis ​​são nomeadas de forma consistente, presumivelmente você poderia simplesmente fazer um loop sobre os conjuntos de valores necessários usando o contador e um loop, então você definiria seu i como macro local de 1 e depois aumentaria Com cada loop, usando-o como identificador para a variável e observação desejada, então se você tiver variável1 e observação1. Você definiu variablei e observationi. O meu entendimento é que você quer tomar valores na tabela de forma diagonal, então, com cada cálculo, você está movendo uma coluna para a esquerda e uma linha para baixo. Alternativamente, seria possível criar dados de painel e, em seguida, usar os procedimentos sugeridos para médias móveis em dados de painel. Atenciosamente, Konrad Versão: StataIC 13.1 26 de maio de 2014, 10:48 Aqui está uma forma de construir o retorno cumulativo: 27 de maio de 2014, 12:21 Obrigado por seus comentários, mas desde que eu sou bastante novo para a stata, tenho dificuldade em entender a sintaxe ao escrever loops, o que eu preciso é um loop que calculará o retorno cumulativo de cada estoque, a qualquer momento por 12 meses , E de preferência outro ciclo que calculará o desvio padrão de cada retorno cumulativo ao longo dos 12 meses. Imagine que o retorno já é dado como uma variável. O problema de fazer isso manualmente em estatísticas deve ser óbvio que eu tenho que gerar, acho que 12 novas variáveis ​​cada uma começando 1 mês uma parte para calcular o cum retorna e, em seguida, o mesmo vor the stdev e combinar isso depois. Seria muito bom se alguém pudesse tentar e me fornecer algum código. 28 de maio de 2014, 02:16 Eu tentei o código, mas ele se acumula apenas por intervalos fixos de 12 meses, então ele só cria retorno acumulativo de janeiro a dezembro, mas não de fevereiro a janeiro e assim por diante. Além disso, ele cria uma nova variável de acumulação, que é a seqüência de uma janela de retorno cumulativa 12 constante, sempre a partir de janeiro, mas isso não é o que eu preciso. Preciso, na verdade, de um loop, que não criará a série, mas sim o último 11º retorno cumulativo e calculará a variância dessa sequência de retorno cumulativa, então recebi para cada observação de retorno 11 ou 12 ao lado uma variável com seu retorno cumulativo e uma Variável com a variância dessa série de retorno cumulativo. Então, acho que o stata não deve realmente gerar uma nova variável, mas fazer os cálculos dentro do loop e criar apenas duas variáveis ​​com o resultado cumulativo de t-11 para t-1 e a variância da sequência de retorno cumulativa. E o código, infelizmente, cria o Id na base de tempo, então, se a minha série começar em junho, o retorno cumulativo só será calculado até dezembro, mas não por 12 meses, independentemente do mês de início. Última edição por Thomas Maurer 28 de maio de 2014, 02:20. Caros usuários do Stata Estou tendo alguns problemas com o comando do colapso. Como estou trabalhando com um modelo dinâmico (GMM), eu preciso colapsar todos os meus dados em médias e sd de 5 anos. A coisa é que criei uma nova variável: período gen. Substituir period80 se yeargt1980 amp yearlt1985 substituir period85 se yeargt1985 amp yearlt1990 substituir period90 se yeargt1990 amp yearlt1995 substituir period95 se yeargt1995 amp yearlt2000 substituir period100 se yeargt2000 amp yearlt2005 substituir período105 se yeargt2005 amp yearlt2010 Então, quando eu colapsar tudo por (período do país), o resultado é errado . Gostaria de colapsá-los por pesos (nr ou id), cada observação por ano. Eu realmente aprecio qualquer conselho.

No comments:

Post a Comment