Create New String Variable In Stata Forex




Create New String Variable In Stata ForexEstou tentando criar variaveis ??dummy em Stata que sao 1 se alguma das variaveis ??dx1 a dx25 comecar com uma sequencia especifica. Eu sei que eu posso fazer isso usando algo como o seguinte, mas para todas as variaveis ??dx 25: Eu, entao, criar outros manequins iguais a 1 se algum dos dx s comecar com estes: Eu tenho tentado descobrir um mais eficiente e elegante Maneira de fazer isso. Exemplo de estrutura de dados (vou mante-lo para dx1 atraves de dx5 aqui por razoes de espaco): perguntou Jun 16 14 at 2:12 Eu primeiro tentar fazer as coisas funcionarem. Depois disso, se e muito ineficiente para as minhas necessidades (e as vezes se esteticamente desagradavel), eu tento trabalhar as coisas de uma maneira diferente. Seguindo sua linha de pensamento, por que nao tentar loops: Im usando as cordas de interesse para nomear as variaveis ??indicador (voce chama-los de manequim). Como algumas strings fariam nomes Stata ilegais, eu uso a funcao strtoname (). Esta convencao de nomenclatura nao e obrigatoria, e claro. Ha mais avaliacao em curso do que realmente necessario, mas pode ser suficiente como e. Para cada elemento do li local. Nenhuma avaliacao mais precisa ser feita apos a primeira substituicao e executada. Mas o codigo verifica todas as variaveis ??dx. Talvez haja uma maneira melhor de alcancar seu resultado final, mas voce nao diz o que e isso. Este parece ser apenas um passo intermediario. Executar help ltcommandorfunctiongt para obter detalhes sobre a sintaxe especifica. (Observe que em seu post original e mais eficiente do que porque Stata nao precisa verificar a condicao if e atendida para cada observacao no banco de dados. Ele simplesmente lista as primeiras 20 observacoes.) Tostring isnt uma funcao e um comando, e em Stata Os dois sao bastante distintos. Nada alem de conjeturas leva a sintaxe que voce tentou. Deveria trabalhar. Mas tostring e apenas um wrapper para a funcao string () e tambem deve trabalhar para obter variaveis ??de sequencia de caracteres. Mas os valores da cadeia seria 11. 99 e essa e a abordagem errada. Dadas as etiquetas de valor, voce esta bem com essa variavel como numerica. Se voce realmente quer uma variavel de sequencia, voce precisa decodificar. Nao tostring. EDIT: A sintaxe tostring () so funcionaria se tostring () fosse uma funcao, o que nao e. A resposta original, portanto, explicou por que o codigo OPs era errado, bem como explicar como faze-lo corretamente. Eu soletrei para fora nesta edicao como usar decode. Welcome ao instituto para a pesquisa e a instrucao de Digitas Modulo de aprendizagem de Stata Criando e recoding variaveis ??Este modulo mostra como criar e recode variaveis. No Stata voce pode criar novas variaveis ??com generate e voce pode modificar os valores de uma variavel existente com replace e com recode. Computacao de novas variaveis ??usando gerar e substituir Vamos usar os dados automaticos para os nossos exemplos. Nesta secao, veremos como calcular variaveis ??com generate e replace. O comprimento variavel contem o comprimento do carro em polegadas. Abaixo vemos estatisticas resumidas de comprimento. Vamos usar o comando generate para fazer uma nova variavel que tem o comprimento em pes em vez de polegadas, chamado lenft. Devemos enfatizar que gerar e para criar uma nova variavel. Para uma variavel existente, voce precisa usar o comando replace (nao gerar). Como mostrado abaixo, usamos replace para repetir a atribuicao para lenft. A sintaxe de gerar e substituir sao identicas, exceto: - gerar trabalhos quando a variavel ainda nao existe e dara um erro se a variavel ja existir. - substituir obras quando a variavel ja existe, e dara um erro se a variavel ainda nao existe. Suponha que queremos fazer uma variavel chamada comprimento2 que tem comprimento ao quadrado. Ou podemos querer fazer loglen que e o log natural de comprimento. Permite obter a media eo desvio padrao de comprimento e podemos fazer Z-scores de comprimento. A media e 187,93 eo desvio padrao e 22,27, portanto zlength pode ser calculado como mostrado abaixo. Com gerar e substituir voce pode usar - para adicao e subtracao voce pode usar / para multiplicacao e divisao que voce pode usar para expoentes (por exemplo, length2) voce pode usar () para controlar a ordem das operacoes. Recodificacao de novas variaveis ??usando gerar e substituir Suponha que queriamos quebrar o mpg em tres categorias. Vamos olhar para uma tabela de mpg para ver onde podemos desenhar as linhas para essas categorias. Permite converter mpg em tres categorias para ajudar a tornar isso mais legivel. Aqui nos convertem mpg em tres categorias usando gerar e substituir. Vamos usar tabulate para verificar se isso funcionou corretamente. Na verdade, voce pode ver que um valor de 1 para mpg3 vai de 12-18, um valor de 2 vai de 19-23, e um valor de 3 vai de 24-41. Agora, podemos usar mpg3 para mostrar uma crosstab de mpg3 por estrangeiros para contrastar a quilometragem dos carros estrangeiros e domesticos. O crosstab acima mostra que 21 dos carros domesticos caem na categoria de alta quilometragem, enquanto 55 dos carros estrangeiros se encaixam nesta categoria. Recodificacao de variaveis ??usando recode Existe uma maneira mais facil de recodificar mpg em tres categorias usando generate e recode. Primeiro, fazemos uma copia de mpg. Chamando-o mpg3a. Em seguida, usamos recode para converter mpg3a em tres categorias: min-18 em 1, 19-23 em 2 e 24-max em 3. Permite verificar se isso funcionou corretamente. Vemos que funcionou perfeitamente. Recodifica com se vamos criar uma variavel chamada mpgfd que avalia a quilometragem dos carros em relacao a sua origem. Seja esta uma variavel 0/1 chamada mpgfd, que e: 0 se abaixo da mediana de mpg para seu grupo (estrangeiro / domestico) 1 se for / acima da mediana de mpg para seu grupo (estrangeiro / domestico). Vemos que a mediana e de 19 para o domestico (foreign0) carros e 24,5 para o estrangeiro (foreign1) carros. Os comandos de geracao e recodificacao abaixo recodificam mpg em mpgfd com base na mediana de carro domestico para os carros domesticos, e com base na mediana de carro estrangeira para os carros estrangeiros. Podemos verificar usando isso abaixo, eo valor recodificado mpgfd parece correto. Sumario Crie uma nova variavel que e comprimento dividido por 12. Mude os valores de uma variavel existente chamada lenft. Recode mpg em mpg3. Tendo tres categorias usando gerar e substituir if. Recode mpg em mpg3a. Tendo tres categorias, 1 2 3, usando gerar e recodificar. Recode mpg em mpgfd. Tendo duas categorias, mas usando diferentes pontos de corte para carros estrangeiros e nacionais. O conteudo deste site nao deve ser interpretado como um endosso de qualquer site, livro ou produto de software especifico pela Universidade da California.