Sunday 23 July 2017

Rename All Variables In Stata Forex


Eu tenho uma lista de conjuntos de dados do 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 poderia ser qualquer coisa (por exemplo, Aclass. Lclass, etc.). Gostaria de renomear essas variáveis ​​para dec. Eu quero criar uma variável ajustada que é sim se o nome do arquivo contiver ajustado e não, se não. Eu acho que seria algo parecido com: Mas, em linguagem Stata apropriada. Então eu tenho isso agora, mas não está funcionando, ele não faz nada. Esta não é uma resposta, este é um conselho que não se encaixa em um comentário. O que você está tentando não é Stata elementar. Se na verdade você não estiver familiarizado com o Stata (não stata), você achará desafiador automatizar esse processo. Eu sou simpático para você como um novo usuário da Stata - é muito para absorver. E pior ainda, se talvez você esteja sob pressão para produzir algum resultado rapidamente. No entanto, gostaria de incentivá-lo a dar um passo atrás de suas tarefas imediatas. Quando comecei a usar Stata de forma séria, comecei a ler meu caminho através do manual "Introdução ao Stata" relevante para minha configuração. O Capítulo 18, em seguida, sugere uma leitura adicional, a maioria dos quais está no Guia do Usuário do Stata. E eu também consegui muito dessa leitura. Há muitos exemplos para copiar e colar no editor Statas do-file para executar você e, melhor ainda, experimentar com a alteração das opções para ver como os resultados mudam. Todos esses manuais estão incluídos como PDF na instalação Stata (desde a versão 11) e são acessíveis a partir do Stata - por exemplo, através da seção Documentação PDF do menu de Ajuda Statas. O objetivo de fazer a leitura não era tanto dominar a Stata quanto a certeza de que eu me familiarizei com uma grande variedade de técnicas básicas importantes, de modo que, quando chegou a hora em que eu precisava delas, eu poderia recordar sua existência, se não o total sintaxe. A documentação da Stata é realmente exemplar - há apenas muito disso. O caminho que segui esvazia as coisas que você precisa saber para começar com pressa. Com isso dito, você talvez encontre 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. Mais sutilmente, o comando de captura permitirá que você tente gerar sua variável tor e simplesmente falhará graciosamente se já existir, economizando uma pequena quantidade de lógica do programa. Respondeu 6 de julho 16 às 15:04 A parte do meio pode ser esboçada: no gerenciamento de listas de arquivos: lista de arquivos (SSC) é muito bom também veja fs (SSC) para uma abordagem diferente. EDIT: Aqui está a prova do conceito para o último detalhe: strpos (ltstring1gt, ltstring2gt) retorna um resultado diferente de zero, ou seja, a posição inicial da segunda string na primeira se a primeira contiver a segunda. Não-zero como um argumento significa verdadeiro em Stata zero significa falso. Veja help strpos () e, se desejar, help cond (). Eu não consigo ver seus nomes de arquivo 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 nome que aquele em que você está tentando avaliar a expressão. (O que significa local). Uma macro que não está definida será avaliada como uma string vazia, com o resultado que você menciona. Respondeu 6 de julho 16 às 16:03 gen ajustado cond (strpos (quotfilename39quot, quotadjustedquot), quotyesquot, quotnoquot) sempre gera o número ajustado. Mesmo se quotadjustedquot estiver no nome do arquivo. É strpos () uma função por si só eu posso parecer que é capaz de usá-lo quando eu tentei isso: se (strpos (quotfilename39quot, quotadjustedquot) true). Então, talvez isso não faça sentido. Ndash DuEllier 7 de julho 16 às 11:41 Essa sintaxe de fantasia baseada em algum outro idioma. Veja a resposta editada para uma resposta. Ndash Nick Cox 7 de julho 16 às 12:37 Corrigido se rc 0 para se rc. Ndash Nick Cox 7 de julho 16 às 23:55 Sua resposta 2017 Stack Exchange, IncIn Stata, eu tenho um conjunto de variáveis ​​que começam com pkg. Em seu estado atual, suas terminações são numéricas: pkg1, pkg2, pkg3, pkg4, etc. Preciso mudar todas essas variáveis ​​para as seqüências de caracteres: pkgmz, pkggmz, pkgsp, pkgsptc, etc. Eu tenho uma coluna dessas seqüências de caracteres que Posso designar como uma lista local, por exemplo: minha pergunta é como eu altero os terminais numéricos para os terminais de seqüência de caracteres. O meu adivinho no código segue. O . Indica onde estou perplexo: me pergunto se seria melhor utilizar o comando regexr (), mas não consigo pensar em uma maneira de incluí-lo. Aprecie qualquer ajuda. Pediu 3 de dezembro 12 às 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ção repetidamente é desnecessário. O coração do problema é andar de bicicleta ao longo de duas listas ao mesmo tempo. Aqui está uma maneira de consertar seu código. Note também renomear no Stata 12 pode lidar com este regexr () é uma função, não um comando uma discussão mais geral em stata-journalsjpdf. htmlarticlenumpr0009 (um pouco desactualizado, mas relevante na questão principal) você tem uma cotação demais Marcas no seu comando de renomeação, por isso não funcionaria. Respondeu Dec 3 12 às 7:21 Nick Cox Você mencionou que o comando renomear no Stata 12 pode lidar com isso. É possível fazê-lo em um único comando de renomeiro, publiquei uma resposta com algumas opções usando o novo comando, mas não consegui descobrir se era possível usar uma única chamada. Ndash Michael A 18 de junho 15 às 22:26 Michael A É possível fazê-lo com um comando, mas a única resposta que me ocorre não é atraente. Renomear (pkg1-pkg9) (pkgmz pkggmz pkgsp pkgsptc pkgmil pkgcof pkgsuk pkgtea pkgric) Ainda assim, continua a ser verdade que as pessoas passarão minutos tentando pensar um truque inteligente quando os nomes poderiam ter sido digitados em segundos. Ndash Nick Cox 19 de junho 15 às 11:00 Ben perguntou em um comentário sobre o incremento dos contadores mantidos em macros locais. Statas macros locais são, em geral, para segurar cordas, caracteres de cadeia podem ser numéricos, portanto, manter números é um caso especial, mas naturalmente muito útil. Esta discussão sozinha 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 maneira principal 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 aconteça seja consistente com a primeira sintaxe para macros. Então, se isso parece um pouco estranho dado o seu histórico, isso é compreensível, mas as macros locais foram destinadas ao processamento de cordas, e não à aritmética. A Mata é muito mais popular neste aspecto. Eu escrevi um tutorial sobre loops e macros em Cox, N. J. 2002. Como enfrentar listas com força. Stata Journal 2 (2): 202-222 que é acessível a todos em As of Stata 12, renomear pode lidar com este caso de várias maneiras. Este método cria uma nova nova coleção de macro 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 que seguem o pkg não precisam ser consecutivos. Um segundo método usa a nova função de renomeação duas vezes como antes, isso não requer números consecutivos nos nomes originais. O primeiro comando muda as 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 renomear (denominado grupo renomeado na documentação Statas), o número de nomes de variáveis ​​antigas deve corresponder ao número de novos nomes de variáveis, portanto, certifique-se de que o número de variáveis ​​combinadas com pkg corresponde O número de novos nomes especificados em croplist. Respondeu 18 de junho 15 às 22:20 Sua resposta 2017 Stack Exchange, Inc

1 comment:

  1. Atenção por FAVOR,

    Isto é para informar ao público em geral que o homem ou a mulher que são saudáveis e 100% sérios na venda de seus rins devem entrar em contato urgentemente com o Minot Center. Como temos muitos pacientes que estão aqui para transplante de rim, você está procurando por uma oportunidade de vender seu rim por dinheiro devido a quebra financeira e nós ofereceremos US $ 550.000 para o seu rim. Meu nome é Doutor Brad Hilaman, sou representante no Hospital Memorial Dosher. Nosso hospital é especializado em Cirurgia Renal / transplante e tratamento de outros órgãos, também lidamos com compra e transplante de rins com um doador vivo e saudável. Se você está interessado em vender seu rim, por favor, não hesite em nos contatar via e-mail: doshermemorialhospital1@gmail.com

    Email: doshermemorialhospital1@gmail.com
    Ou whatsapp: +2348110652559
    Dr. Brad Hilaman.

    ReplyDelete