Movendo o stata médio do laço


Esta estrutura de dados é completamente imprópria para a finalidade. Assumindo um id identificador você precisa remodelar. por exemplo. Em seguida, uma média móvel é fácil. Use tssmooth ou simplesmente gere. por exemplo. Mais sobre por que sua estrutura de dados é bastante imprópria: não só o cálculo de uma média móvel precisa de um loop (não necessariamente envolvendo egen), mas você estaria criando várias novas variáveis ​​extras. Usá-los em qualquer análise subseqüente seria algo entre estranho e impossível. EDIT III dar um loop de amostra, enquanto não se deslocando da minha posição que é má técnica. Eu não vejo uma razão por trás de sua convenção de nomenclatura em que P1947 é um meio para 1943-1945 Eu suponho que é apenas um erro de digitação. Vamos supor que temos dados para 1913-2017. Por meio de 3 anos, perdemos um ano em cada extremidade. Isso poderia ser escrito de forma mais concisa, à custa de uma enxurrada de macros dentro de macros. Usando pesos desiguais é fácil, como acima. A única razão para usar o egen é que ele não desiste se houver faltas, o que o acima fará. Por uma questão de exaustividade, note que é fácil lidar com falhas sem recorrer a egen. E o denominador Se todos os valores estiverem em falta, este reduz-se a 0/0, ou em falta. Caso contrário, se algum valor estiver faltando, adicionamos 0 ao numerador e 0 ao denominador, que é o mesmo que ignorá-lo. Naturalmente, o código é tolerável como acima para médias de 3 anos, mas para esse caso ou para a média de mais anos, nós substituiria as linhas acima por um loop, que é o que faz egen. Começando na versão 6.08 do sistema SAS, O PROC EXPAND no software SAS / ETS pode ser usado para fazer uma variedade de transformações de dados. Essas transformações incluem: leads, atrasos, médias móveis ponderadas e não ponderadas, somas móveis e somas cumulativas, para citar apenas algumas. Muitas novas transformações foram adicionadas na versão 6.12, incluindo especificações separadas para médias centradas e para trás. Essas novas transformações tornaram necessário modificar a sintaxe de algumas das transformações suportadas antes da Versão 6.12. Exemplos de como especificar a sintaxe para médias centradas e para trás movendo usando a versão 6.11 e anterior e versão 6.12 e posterior são dadas abaixo. PROC EXPAND pode calcular uma média móvel centrada ou uma média móvel para trás. Uma média móvel centrada em 5 períodos é calculada pela média de um total de 5 valores consecutivos da série (o valor do período corrente, além dos dois valores imediatamente anteriores e dois valores imediatamente a seguir ao valor actual). Uma média de retrocesso de 5 períodos é calculada pela média do valor do período corrente com os valores dos 4 períodos imediatamente anteriores. A sintaxe a seguir ilustra como usar a especificação TRANSFORM (MOVAVE n) para calcular uma média móvel centrada em 5 períodos usando a Versão 6.11 ou anterior: Para calcular uma média móvel de retrocesso de n períodos usando a Versão 6.11 ou anterior, use TRANSFORM (MOVAVE) N LAG k) especificação, onde k (n-1) / 2 se n é ímpar ou onde k (n-2) / 2 se n é par. A seguinte sintaxe ilustra como usar a especificação TRANSFORM (CMOVAVE n) para calcular uma média móvel centrada em 5 períodos usando a Liberação 6.12 ou Mais tarde: A seguinte sintaxe semelhante ilustra como usar a especificação TRANSFORM (MOVAVE n) para calcular uma média de retrocesso de 5 períodos usando a Versão 6.12 ou posterior: Para obter mais informações, consulte Operações de Transformação no capítulo EXPAND do Guia do Usuário do SAS / ETS . Se você não tiver acesso ao SAS / ETS, poderá calcular uma média móvel na etapa DATA, conforme ilustrado neste programa de exemplo. Sistema Operacional e Informação de Liberação O código de amostra na guia Código Completo ilustra como calcular a média móvel de uma variável através de um conjunto de dados inteiro, nas últimas N observações em um conjunto de dados ou nas últimas N observações dentro de um grupo BY. Esses arquivos de amostra e exemplos de código são fornecidos pelo SAS Institute Inc. como é sem garantia de qualquer tipo, expressa ou implícita, incluindo mas não se limitando às garantias implícitas de comercialização e adequação a um propósito específico. Os beneficiários reconhecem e concordam que SAS Institute não será responsável por quaisquer danos decorrentes da utilização destes materiais. Além disso, o SAS Institute não fornecerá suporte para os materiais aqui contidos. Esses arquivos de amostra e exemplos de código são fornecidos pelo SAS Institute Inc. como é sem garantia de qualquer tipo, expressa ou implícita, incluindo mas não se limitando às garantias implícitas de comercialização e adequação a um propósito específico. Os beneficiários reconhecem e concordam que SAS Institute não será responsável por quaisquer danos decorrentes da utilização destes materiais. Além disso, o SAS Institute não fornecerá suporte para os materiais aqui contidos. Calcule a média móvel de uma variável através de um conjunto de dados inteiro, nas últimas N observações em um conjunto de dados ou nas últimas N observações dentro de um grupo BY. MOVAVG: Módulo Stata usando Mata para gerar médias móveis Quando solicitando uma correção, Mencione por favor estes artigos identificador: RePEc: boc: bocode: s457476. Veja informações gerais sobre como corrigir material no RePEc. Para questões técnicas sobre este item, ou para corrigir seus autores, título, resumo, informações bibliográficas ou download, entre em contato: (Christopher F Baum) Se você é autor deste item e ainda não está registrado no RePEc, recomendamos que o faça aqui . Isso permite vincular seu perfil a este item. Ele também permite que você aceite citações em potencial para este item que estamos incertos sobre. Se as referências estiverem totalmente ausentes, você pode adicioná-las usando este formulário. Se as referências completas listarem um item que está presente no RePEc, mas o sistema não tiver vinculado a ele, você pode ajudar com este formulário. Se você souber de itens ausentes citando este, você pode nos ajudar a criar esses links adicionando as referências relevantes da mesma maneira como acima, para cada item referente. Se você é um autor registrado deste item, você também pode querer verificar a guia de citações no seu perfil, pois pode haver algumas citações esperando confirmação. Tenha em atenção que as correcções podem demorar algumas semanas para filtrar os vários serviços RePEc. Mais serviços MyIDEAS Seguir séries, jornais, autores e mais Novos artigos por e-mail Inscrever-se para novas adições ao RePEc Registro de autor Perfis públicos para pesquisadores de economia Rankings Vários rankings de pesquisa em economia e campos relacionados Genealogia Quem foi um estudante de quem, usando RePEc BiblE Artigos curados artigos de amp papéis vários temas de economia MPRA Carregar seu artigo para ser listado em RePEc e IDEAS EconAcademics agregador de blogs para a pesquisa de economia Plágio Casos de plágio em Economia Papéis do mercado de trabalho RePEc série de papel de trabalho dedicado ao mercado de trabalho Fantasy League Pretend você está no leme De um departamento de economia Serviços do StL Fed Dados, pesquisa, apps amp mais do St. Louis FedAnnouncement É o meu primeiro post e vou tentar ser o mais claro possível. O link para o banco de dados principal está no final da postagem. Contexto Estou usando o Stata / SE 12.0 no Windows 10. Eu comecei com o Stata há apenas algumas semanas e estou tentando aprender por conta própria para uma atribuição devido em poucos dias agora (porque cada tabela ou figura me levou dias e Dias): a replicação do papel exige que as pessoas nascidas nos últimos trimestres tenham mais educação em média do que as que nasceram no primeiro Devido às leis de escolaridade obrigatória. Os primeiros números desenham um gráfico do número médio de anos de educação (variável EDUC) para todas as pessoas nascidas de um determinado ano (variável YOB para o ano de nascimento) durante um determinado trimestre (QOB). Há uma tendência geral de aumento e para detrend os dados, eles usam uma média móvel (figura IV), que é onde eu tenho sido bloqueado para os últimos 5 dias. Problema No banco de dados, existem 27 variáveis ​​entre as quais v4 renomeado EDUC, v27 renomeado YOB (ano de nascimento) e v18 renomeado QOB (trimestre de nascimento). O que é necessário para a média móvel é, para cada conjunto de pessoas nascidas no ano c e trimestre j, calculando o número médio de anos de educação não para este ano e trimestre, mas para o trimestre imediatamente anterior, 2 quartos antes, um quarto Mais tarde e 2 quartos mais tarde (explicado p. 985 do papel). Por exemplo, se eu olhar para os homens nascidos entre 1930 e 1939 como nesta figura (figura IV do artigo: onedrive. live/redirresi. Ntphoto2cpng), eu preciso começar com a coorte nascida em 1930, 3º trimestre e calcular a Número médio de anos de escolaridade dos nascidos em 1930, 2º trimestre (nascido um quarto antes da dada coorte), mesmo para os nascidos em 1930, 1º trimestre (nascido 2 trimestres antes da coorte), mesmo para os nascidos em 1930, 4º trimestre (um quarto após a coorte), e o mesmo para os nascidos em 1931, 1º trimestre (2 trimestres após a coorte). Em seguida, a média móvel é obtida adicionando esses 4 valores e dividindo por 4. Todo esse processo deve ser repetido para cada coorte entre 1930, 3º trimestre e 1939, 2º trimestre. Do-File Para o do-file (onedrive. live/redirresid6919D329B3BF1EF23227ampauthkeyAO2cxEN AGpZMgsMampithintfile2cdo), eu comecei com o modelo das outras figuras e tentei usar loop foreach e muitas outras coisas (não me lembro das mensagens de erro / não sabia que estava indo Para postar aqui), mas ainda não descobrir como dizer Stata: quotfor cada YOBQn. Calcular média (EDUC) de YOBQ n-1, YOBQ n-2, YOBQ n1, YOBQ n2. Para fazer a soma e dividir por 4 depois que deve ser mais fácil. Recebi uma dica excepcional do assistente de ensino: tente o comando tssmooth. Você primeiro terá que criar uma variável de tempo para a qual o comando do grupo egen será muito útil. Mas, de acordo com minha pesquisa sobre quotegenquot e quottssetquot nos manuais de dados e no livro Cameron amp Trivedi, quotEconometrics usando Stataquot (último link): stata / manuals14 / degen. Tfolder2cdta stata / manuals14 / gsw11.pdf stata / manuals14 / u11.p. Languagesyntax stata / manuals14 / u13.p. Itsubscripting onedrive. live/redirresi. Intfile2cpdf Eu deveria tsset os dados antes tssmooth, mas eu não ter passado este estágio desde aparentemente, a notação n não é permitido com quotegenquot (erro r (101) quotweights não allowedquot) e ainda estou muito confuso com a forma de combinar egen, tsset E tssmooth. Seria ótimo se alguém pudesse me ajudar com a forma de resolver os quotweights não allowedquot erro e como combinar os comandos quotegenquot, quottssetquot e quottssmoothquot. Muito obrigado Postscript: aqui está o banco de dados pela maneira onedrive. live / redirresi. Tfolder2cdta Nota: Eu tenho o do-file para as outras figuras e tabelas mais importantes do artigo, exceto a tabela I, mas este arquivo provavelmente não é necessário / apenas para info: onedrive. live/redirresi. Hintfile2cdo Última edição por Amarylis Durand 25 Mar 2017, 01:55. 25 Mar 2017, 22:50 Aqui está uma versão mais curta da minha pergunta: como evitar o erro abaixo (r451 em negrito) e como dizer Stata que a média móvel de quotmedstay1quot deve ser calculada para cada valor de tps / por YOB QOB Para todos os nascidos no mesmo ano e no mesmo trimestre, classificar por anos e trimestres crescentes e calcular o número médio de anos de educação por YOB QOB. Sort: egen medstay1 mean (EDUC) / gerar uma nova variável YOBNew porque o comando yq exige que o primeiro argumento esteja entre 1000 e 9999 e os nossos dados para YOB no Censo de 1980 estão entre 30 e 49 em vez de 1930 e 1949 / gen YOBNewYOB Substitua YOBNew YOB1900 se CENSUS80 / gerar uma variável de tempo que tem o formato requerido no formato tsets / gen tpsyq (YOBNew, QOB) tq tps / a seguinte instrução retorna r451. Repetidos valores de tempo no painel, provavelmente porque há milhares de pessoas nascidas durante o mesmo ano e mesmo trimestre, obviamente com o mesmo número médio de anos de educação. Como evitar este erro / tsset medstay1 tps / instrução para ter a média móvel MA, mas eu quero o movimento da média de medstay1 a ser calculado para cada valor do quivis timevariable. Que comando me permitiria fazer isso ou é feito automaticamente / tssmooth ma MA medstay1. Window (2 0 2) Espero que alguém possa ajudar.

Comments

Popular posts from this blog

Como calcular a média móvel em sas

Forex ema 20 50

Binary options robot software