Thursday 19 April 2018

Renaming all variables in stata forex


Eu tenho uma lista de conjuntos de dados Stata: entre alguns uma variável tor está ausente, e eu quero adicionar essa variável, se ela não existir. Os conjuntos de dados contêm uma variável chamada x classe, em que x pode ser qualquer coisa (por exemplo, Aclass. Lclass etc. etc.). Eu gostaria de renomear essas variáveis ​​para dec. Eu quero criar uma variável ajustada que é sim se o nome do arquivo contém ajustado e não se não. Eu acho que seria algo parecido com: Mas então na linguagem Stata adequada. Então eu tenho isso agora, mas não está funcionando, não faz nada. Isso não é uma resposta, é um conselho que não se encaixa em um comentário. O que você está tentando não é elementar Stata. Se você não estiver familiarizado com o Stata (não o stata), será difícil automatizar esse processo. Eu sou solidário com você como um novo usuário do Stata - é muito para absorver. E pior ainda se você estiver sob pressão para produzir alguma saída rapidamente. No entanto, gostaria de encorajá-lo a dar um passo atrás de suas tarefas imediatas. Quando comecei a usar o Stata de uma maneira séria, comecei lendo meu caminho através do manual Getting Started with Stata relevante para minha configuração. O Capítulo 18 dá então uma leitura adicional sugerida, grande parte do que está no Stata Users Guide. e eu trabalhei meu caminho através de grande parte dessa leitura também. Há muitos exemplos para copiar e colar no editor de arquivo do Statas para executar você mesmo e, melhor ainda, para experimentar a alteração das opções para ver como os resultados mudam. Todos esses manuais estão incluídos como PDFs na instalação do Stata (desde a versão 11) e podem ser acessados ​​no Stata - por exemplo, através da seção Documentação em PDF do menu Ajuda da Stata. O objetivo de fazer a leitura não era tanto dominar Stata quanto ter certeza de estar familiarizado com uma ampla variedade de técnicas básicas importantes, de modo que quando chegasse a hora de precisar delas, eu poderia me lembrar de sua existência, se não a completa sintaxe. A documentação do Stata é realmente exemplar - há muito disso. O caminho que segui aborda as coisas que você precisa saber para começar com pressa. Com isto dito, talvez você ache o comando foreach útil para looping, o comando filelist para obter uma lista de conjuntos de dados Stata (não bancos de dados) e o comando ds para obter uma lista de nomes de variáveis ​​dentro de um conjunto de dados Stata. De maneira mais sutil, o comando capture permitirá que você tente gerar sua variável tor e simplesmente falhará graciosamente se já existir, economizando uma pequena quantidade de lógica de programa. A resposta pode ser esboçada: No gerenciamento de listas de arquivos: filelist (SSC) é muito bom também veja fs (SSC) para uma abordagem diferente. EDIT: Aqui está a prova de conceito para o último detalhe: strpos (ltstring1gt, ltstring2gt) retorna um resultado diferente de zero, ou seja, a posição inicial da segunda seqüência de caracteres no primeiro se o primeiro contiver o segundo. Não-zero como um argumento significa verdadeiro em Stata zero significa falso. Veja help strpos () e, se desejado, ajude cond (). Não consigo ver seus nomes de arquivos para comentar ou testar seu código, mas um problema possível é que a macro local não está definida no mesmo espaço de nomes daquele em que você está tentando avaliar a expressão. (Isso é o que significa local.) Uma macro que não está definida será avaliada como uma string vazia, com o resultado mencionado. respondido 6 de julho às 16:03 gen cond ajustada (strpos (quotfilename39quot, quotadjustedquot), quotyesquot, quotnoquot) sempre gera ajustado no. mesmo que quotadjustedquot esteja no nome do arquivo. É strpos () uma função por si só que eu pareço ser capaz de usá-lo quando eu tentei isso: if (strpos (quotfilename39quot, quotadjustedquot) true). então, novamente, talvez isso não faça sentido. ndash DuEllier Jul 7 at 11:41 Sintaxe de fantasia do That39s baseada em alguma outra linguagem. Veja a resposta editada para uma resposta. ndash Nick Cox Jul 7 at 12:37 Corrigido se rc 0 to if rc. ndash Nick Cox Jul 7 at 23:55 Sua resposta 2016 Stack Exchange, IncIn Stata, Eu tenho um conjunto de variáveis ​​que começam com o pkg. Em seu estado atual, seus finais são numéricos: pkg1, pkg2, pkg3, pkg4, etc. Eu preciso mudar todos esses endings de variáveis ​​para strings: pkgmz, pkggmz, pkgsp, pkgsptc, etc. Eu tenho uma coluna dessas terminações de string que Eu posso designar como uma lista local, por exemplo: Minha pergunta é como eu mudo as terminações numéricas para os finais de string. Meu palpite no código segue. O . indica onde estou perplexo: Gostaria de saber se seria melhor utilizar o comando regexr (), mas não consigo pensar em uma maneira de incluí-lo. Aprecie qualquer ajuda. perguntou 03 de dezembro 12 em 2:03 Não há necessidade de invocar expressões regulares. Você tem os novos sufixos, o prefixo pkg é sempre o mesmo, então o trabalho de extraí-lo repetidamente é desnecessário. O coração do problema está circulando em duas listas de uma só vez. Aqui está uma maneira de corrigir seu código. Nota também renomear no Stata 12 pode lidar com isso regexr () é uma função, não um comando uma discussão mais geral em stata-journal / sjpdf. htmlarticlenumpr0009 (um pouco desatualizado, mas relevante sobre a questão principal) você tem também muitas aspas no seu comando renomear, por isso não funcionaria. respondeu 3 dez 12 às 7:21 Nick Cox Você mencionou que o comando renomear no Stata 12 pode lidar com isso. É possível fazer isso em um único comando de renomeação Eu postei uma resposta com algumas opções usando o novo comando, mas não consegui descobrir se era possível usar uma única chamada. Michael A É possível fazer isso com um comando, mas a única resposta que me ocorre não é envolvente. rename (pkg1-pkg9) (pkgmz pkggmz pkgspkg pkgmil pkgmil pkgcof pkgsuk pkgtea pkgric) Ainda assim, é verdade que as pessoas vão passar alguns minutos tentando pensar em um truque inteligente quando os nomes poderiam ter sido digitados em segundos. ndash Nick Cox Jun 19 15 at 11:00 Ben perguntou em um comentário sobre incrementar contadores mantidos em macros locais. As macros locais Statas são, em geral, para conter strings. Cadeias de caracteres podem ser numéricas, portanto, manter números é um caso especial, mas, naturalmente, muito útil. Este segmento sozinho mostrou vários exemplos. Isso ajuda a manter essa história em mente. Uma sintaxe de longa data é baseada nos formulários O primeiro formulário copia para macname enquanto o segundo formulário é avaliado antes de atribuir os resultados ao macname. A principal maneira de incrementar contadores foi para várias versões agora é permitida. No entanto, embora permitido não funcionará como você pode esperar, embora o que acontece é consistente com a primeira sintaxe para macros. Então, se isso parece um pouco estranho, dado o seu background, isso é compreensível, mas as macros locais foram planejadas para processamento de strings, não para aritmética. Mata é muito mais mainstream-like a este respeito. Eu escrevi um tutorial sobre loops e macros em Cox, N. J. 2002. Como enfrentar listas com coragem. Stata Journal 2 (2): 202-222, que é acessível a todos em A partir do Stata 12, renomear pode lidar com este caso de várias maneiras. Este método cria uma nova macro newcroplist contendo nomes de variáveis ​​pkgmz pkggmz pkgsp pkgsptc pkgmil pkgcof pkgsuk pkgtea pkgric. em seguida, usa renomear para renomear variáveis ​​seguindo o padrão pkgltdigitsgt para os nomes especificados em newcroplist. Os números seguintes ao pacote não precisam ser consecutivos. Um segundo método usa a nova função renomear duas vezes como antes, isso não requer números consecutivos nos nomes originais. O primeiro comando renomeia variáveis ​​do padrão pkgltdigitsgt para os nomes especificados em croplist. O segundo comando adiciona o prefixo pkg aos novos nomes de variáveis. Em ambos os casos, e em geral ao usar o comando rename (referido como renomear grupo na documentação do Statas), o número de nomes de variáveis ​​antigos deve corresponder ao número de novos nomes de variáveis, portanto certifique-se de que o número de variáveis ​​correspondidas por pkg corresponda o número de novos nomes especificados em croplist. respondido Jun 18 15 at 22:20 Sua Resposta 2016 Stack Exchange, IncPara perguntas rápidas envie um e-mail para dataprinceton. edu. Sem appts. necessário durante as horas de caminhada. Observação: o laboratório do DSS fica aberto enquanto o Firestone estiver aberto, sem compromissos necessários para usar os computadores do laboratório para sua própria análise. Dados, conjuntos de dados e variáveis ​​Gerenciamento de dados Definir diretório de trabalho, arquivo de log, abrir / salvar um arquivo de dados Stata, sistema de codificação de cores Stata, renomear, recodificar e criar novas variáveis, caixas de exclusão, exclusão de variáveis, mesclagem, acréscimos, frequências e estatísticas descritivas clique aqui Arquivos de dados Um conjunto de dados é apenas um arquivo no qual as linhas representam observações e as colunas representam variáveis. Por exemplo, uma observação pode ser um carro e as variáveis ​​seriam informações sobre o carro, como marca, comprimento, preço e relação de transmissão: se os dados já estiverem no formato de arquivo proprietário Statas, eles terão extensão dta. por exemplo mydata. dta. Os dados nesse formato podem ser lidos diretamente no Stata com o comando use. Se o Stata fornecer a mensagem de erro quando você tentar abrir um arquivo de dados, veja aqui informações sobre como corrigir o problema. O Stata pode ler conjuntos de dados em vários formatos de texto, bem como no formato proprietário Statas. Muitas vezes, você começará com os dados em formato de texto, os lerá no Stata e os salvará no formato Stata. Você também pode encontrar dados em vários outros formatos. Por exemplo, os dados de certos arquivos de dados são formatados com freqüência para o pacote estatístico SPSS. Um programa chamado DBMS / Copy. disponível no laboratório DSS, bem como em máquinas Windows nos clusters públicos OIT, pode converter dados do SPSS e de muitos outros formatos para o formato Stata de forma rápida e fácil. Um formato de texto comum é o arquivo delimitado. Arquivos delimitados são mais comumente delimitados por tabulações ou vírgulas. Isso significa apenas que as variáveis ​​em cada observação são inseridas uma após a outra em uma linha e separadas por tabulações ou vírgulas, enquanto as observações são separadas por retornos difíceis. O exemplo acima é realmente como um arquivo de texto delimitado por vírgula ficaria se aberto no Word. A sintaxe do comando para ler em um arquivo delimitado por tabulações ou vírgulas é: onde filename é o nome do arquivo que contém os dados delimitados por tabulações ou vírgulas. insheet é frequentemente usado para ler planilhas salvas como arquivos csv (delimitados por vírgulas) de um pacote como o Excel. Por favor, note que uma planilha precisa ser colocada em um formato amigável ao Stata antes que o Stata possa lê-lo apropriadamente. Não fazer isso pode causar dores de cabeça. Para mais detalhes, consulte Existem dois comandos diferentes de insheet - infile e infix - que lêem outros tipos menos comuns de arquivos de texto. Se você tiver dados delimitados por espaço, dados de largura fixa ou se deparar com um dicionário de dados Stata. consulte Você pode usar o comando Stata save para salvar um arquivo no formato Stata: em que filename é o nome do seu arquivo Stata. Por exemplo: salvará um arquivo Stata chamado myfile. dta. Este arquivo pode ser lido no Stata com o comando use. Observe que a extensão do arquivo. dta é anexada automaticamente aos arquivos Stata. Você não precisa incluir a extensão de arquivo nos comandos use ou save. Se você já tem um arquivo Stata chamado myfile. dta e deseja salvar uma versão atualizada do arquivo com o mesmo nome, use o comando stata save com a opção replace, como em: onde filename é o nome do arquivo que você deseja para substituir, por exemplo Para salvar uma versão atualizada do arquivo ativo, você pode simplesmente digitar: Este comando irá destruir a versão anterior do seu arquivo, então use a opção de substituição somente se tiver certeza de que não precisará da versão mais antiga do seu arquivo. Não há como recuperar seu arquivo original depois que outro arquivo tiver sido gravado. Valores ausentes Algumas vezes uma variável está faltando para algumas observações. (Falta significa que não há valor - a pessoa não respondeu à pergunta da pesquisa ou os dados não puderam ser adquiridos por algum outro motivo.) No Stata, os valores ausentes nas variáveis ​​numéricas são representados por um ponto (.). Observações com valores omissos são deixadas de fora das tabelas produzidas por tabulação e também são deixadas de fora das regressões. Eles aparecem como períodos no navegador de dados stata e são representados por períodos em comandos. Valores de string ausentes aparecem como células em branco no navegador e são representados em comandos por duas aspas duplas sem nada entre elas (). O que queremos dizer representado em comandos fará mais sentido um pouco mais tarde. Lembre-se de que, se você estiver salvando dados do Excel, os valores ausentes precisarão ser deixados em branco para que o Stata os reconheça como ausentes. Tipos de Variáveis ​​Stata Existem dois tipos de variáveis ​​no Stata: numeric e string. Um terceiro tipo, data, é realmente um tipo especial de numérico, como veremos. Variáveis ​​numéricas são simples - elas contêm números. Variáveis ​​de string contêm texto que pode conter qualquer caractere no teclado: letras, números e caracteres especiais. Em auto3, make é uma variável de string - todas as outras são numéricas. Podemos fazer cálculos numéricos e análises estatísticas em variáveis ​​numéricas - não podemos em variáveis ​​de string. Variáveis ​​de string são geralmente usadas como identificadores para a observação. Uma das variáveis ​​numéricas, data, pretende representar uma data - digamos que foi a data em que os dados sobre cada carro foram coletados. No Stata, as datas são números que representam o número de dias desde 1º de janeiro de 1960. A representação de datas como números permite que façamos cálculos, como medir o tempo entre duas datas. Mas parece estranho, e o Stata tem uma maneira simples de fazer com que as variáveis ​​de datas pareçam datas: (O comando format tem outros usos, que você pode ver digitando o formato de ajuda.) Você pode usar o comando di junto com a função d () Para exibir o valor Stata de qualquer data: Para obter mais informações sobre como o Stata trata datas e dados de tempo, consulte Dados de Séries Temporais em Convenções de Nomenclatura de Variáveis ​​Stata As regras para nomear variáveis ​​em Stata são simples: Stata faz distinção entre maiúsculas e minúsculas letras maiúsculas em nomes de variáveis ​​é uma boa ideia. Eles não podem conter mais de 32 caracteres. Eles podem conter letras, números ou sublinhados (). Espaços ou outros caracteres especiais (como, etc.) não são permitidos. O primeiro caractere deve ser uma letra ou sublinhado, não um número. Iniciar nomes de variáveis ​​com sublinhados é uma ideia muito ruim, já que as variáveis ​​internas do Statas começam com um sublinhado. Renomeando Variáveis ​​A mudança do nome de uma variável no Stata é fácil com o comando rename: copy 2007 The Trustees of Princeton University. Todos os direitos reservados. dataprinceton. edu NOTA: A informação é para a Universidade de Princeton. Sinta-se livre para usar a documentação, mas não podemos responder a perguntas fora de Princeton Esta página foi atualizada em:

No comments:

Post a Comment