AVISO: O grupo de consultoria estatística IDRE estará migrando o site para o WordPress CMS em fevereiro para facilitar a manutenção e criação de novos conteúdos. Algumas de nossas páginas antigas serão removidas ou arquivadas de modo que elas não serão mais mantidas. Vamos tentar manter os redirecionamentos para que os URLs antigos continuem a funcionar da melhor maneira possível. Bem-vindo ao Instituto de Pesquisa e Educação Digital, ajudando o Grupo de Consultoria Estatal, dando um presente. Análise de dados da Stata Exemplos Informação da versão da regressão truncada: o código desta página foi testado em Stata 12. A regressão truncada é usada para modelar variáveis dependentes para as quais alguns dos As observações não estão incluídas na análise devido ao valor da variável dependente. Observe: O objetivo desta página é mostrar como usar vários comandos de análise de dados. Não abrange todos os aspectos do processo de pesquisa que os pesquisadores devem fazer. Em particular, não abrange limpeza e verificação de dados, verificação de pressupostos, diagnósticos de modelos ou possíveis análises de acompanhamento. Exemplos de regressão truncada Exemplo 1. Um estudo de alunos em um programa especial GATE (talentoso e talentoso) deseja modelar a realização como uma função das habilidades linguísticas e do tipo de programa no qual o aluno está atualmente matriculado. Uma grande preocupação é que os alunos devem ter uma pontuação de realização mínima de 40 para entrar no programa especial. Assim, a amostra é truncada com uma pontuação de realização de 40. Exemplo 2. Um pesquisador tem dados para uma amostra de americanos cuja renda está acima da linha de pobreza. Portanto, a parte mais baixa da distribuição de renda é truncada. Se o pesquisador tivesse uma amostra de americanos cuja renda estava em ou abaixo da linha de pobreza, a parte superior da distribuição de renda seria truncada. Em outras palavras, o truncamento é resultado da amostragem apenas parte da distribuição da variável de resultado. Descrição dos dados Leve o exemplo 1 acima. Temos um arquivo de dados hipotético, truncreg. dta. Com 178 observações. A variável de resultado é chamada de achiv. E a variável de pontuação do teste de linguagem é chamada langscore. A variável prog é uma variável categórica preditor com três níveis indicando o tipo de programa no qual os alunos foram matriculados. Vamos ver os dados. É sempre uma boa idéia começar com estatística descritiva. Métodos de análise que você pode considerar Abaixo está uma lista de alguns métodos de análise que você pode ter encontrado. Alguns dos métodos listados são bastante razoáveis, enquanto outros já caíram fora de favor ou têm limitações. Regressão OLS - Você poderia analisar esses dados usando a regressão OLS. A regressão OLS não ajustará as estimativas dos coeficientes para levar em consideração o efeito de truncar a amostra em 40 e os coeficientes podem ser severamente tendenciosos. Isso pode ser conceitualizado como um erro de especificação do modelo (Heckman, 1979). Regressão truncada - A regressão truncada aborda o viés introduzido ao usar a regressão OLS com dados truncados. Note-se que com regressão truncada, a variância da variável de resultado é reduzida em comparação com a distribuição que não está truncada. Além disso, se a parte inferior da distribuição for truncada, a média da variável truncada será maior do que a média da variável não truncada se a truncagem for superior, a média da variável truncada será menor do que a variável não truncada. Estes tipos de modelos também podem ser conceitualizados como modelos de seleção Heckman, que são usados para corrigir o viés de seleção de amostragem. Regressão censurada - Às vezes, os conceitos de trunção e censura são confusos. Com dados censurados, temos todas as observações, mas não conhecemos os valores verdadeiros de alguns deles. Com truncamento, algumas das observações não estão incluídas na análise por causa do valor da variável de resultado. Não seria apropriado analisar os dados em nosso exemplo usando um modelo de regressão censurado. Regressão truncada Abaixo, usamos o comando truncreg para estimar um modelo de regressão truncada. O i. Antes de prog indica que é uma variável de fatores (ou seja, variável categórica) e que deve ser incluída no modelo como uma série de variáveis de indicadores. A opção ll () no comando truncreg indica o valor no qual o trunfo esquerdo ocorre. Há também uma opção ul () para indicar o valor do truncamento certo, que não era necessário neste exemplo. A saída começa com uma nota indicando que zero observações foram truncadas. Isso ocorre porque nossa amostra não continha dados com valores inferiores a 40 para realização. A nota é seguida pelo registro de iteração, que dá os valores das probabilidades de log começando com um modelo que não possui preditores. O último valor no log é o valor final da probabilidade de log e é repetido abaixo. A seguir, as informações do cabeçalho são fornecidas. No lado esquerdo estão os limites inferior e superior do truncamento e uma repetição da probabilidade de log final. À direita, é dado o número de observações utilizadas (178), juntamente com o qui-quadrado de Wald com três graus de liberdade. O qui-quadrado de Wald é o que você obtém se você usou o comando de teste, depois de estimar o modelo, para testar que todos os coeficientes são zero. Finalmente, há um valor de p para o teste do qui-quadrado. Como um todo, esse modelo é estatisticamente significativo. Na tabela de coeficientes, temos os coeficientes de regressão truncada, o erro padrão dos coeficientes, os testes Wald z (coeficiente) e o valor p associado a cada teste z. Por padrão, também obtemos um intervalo de confiança 95 para os coeficientes. Com a opção level (), você pode solicitar um intervalo de confiança diferente. A sigma estatística auxiliar é equivalente ao erro padrão da estimativa na regressão OLS. O valor de 8.76 pode ser comparado ao desvio padrão de realização, que foi de 8,96. Isso mostra uma redução modesta. A saída também contém uma estimativa do erro padrão do sigma, bem como um intervalo de confiança 95 para esse valor. O modelo de regressão truncada que prevê a realização dos escores da linguagem e do tipo de programa foi estatisticamente significativo (chi-square 54.76, df 3, pIf você gostaria de comparar modelos de regressão truncada, você pode emitir o comando estatístico para obter a probabilidade do log, AIC e BIC A saída de truncreg inclui nem R 2 nem pseudo-R 2. Você pode calcular uma estimativa aproximada do grau de associação ao correlacionar achiv com o valor previsto e ao quadrado do resultado. O valor calculado de .31 é uma estimativa aproximada de O R 2 que você encontraria em uma regressão OLS. A correlação quadrática entre os valores de aptidão acadêmica observados e previstos é de aproximadamente 0,31, indicando que esses preditores representavam mais de 30 da variabilidade na variável de resultado. As coisas para considerar o comando Statas truncreg são projetadas Para trabalhar quando o truncamento está na variável de resultado no modelo. É possível ter amostras que são truncadas com base em um ou mais preditores. Por exemplo, o modo O GPA da faculdade em função das notas do GPA (HSGPA) e do SAT da escola secundária envolve uma amostra que é truncada com base nos preditores, ou seja, apenas os alunos com maiores valores de HSGPA e SAT são admitidos na faculdade. Você precisa ter cuidado com o valor usado como valor de truncamento, pois afeta a estimativa dos coeficientes e erros padrão. No exemplo acima, se tivéssemos usado ll (39) em vez de ll (40). Os resultados teriam sido um pouco diferentes. Não importa que não existissem valores de 40 na nossa amostra. Referências Greene, W. H. (2003). Análise econométrica, Quinta edição. Upper Saddle River, NJ: Prentice Hall. Heckman, J. J. (1979). Compartilhamento de seleção de exemplo como um erro de especificação. Econometrica. Volume 47, Número 1, páginas 153 - 161. Long, J. S. (1997). Modelos de regressão para variáveis categóricas e dependentes limitadas. Thousand Oaks, CA: Sage Publications. O conteúdo deste site não deve ser interpretado como um endosso de qualquer site, livro ou produto de software da Universidade da Califórnia. NOTICE: O grupo de consultoria estatística IDRE estará migrando o site para o WordPress CMS em fevereiro para facilitar Manutenção e criação de novos conteúdos. Algumas de nossas páginas antigas serão removidas ou arquivadas de modo que elas não serão mais mantidas. Vamos tentar manter os redirecionamentos para que os URLs antigos continuem a funcionar da melhor maneira possível. Bem-vindo ao Instituto de Pesquisas Digitais e Educação Ajude o Grupo de Consultoria Estatal dando um presente Stata FAQ: Como extrair uma parte de uma variável de string usando expressões regulares O processamento de seqüências de caracteres é bastante fácil em Stata por causa das muitas funções de string incorporadas . Entre estas funções de string são três funções relacionadas a expressões regulares, regexm para correspondência, regexr para substituição e regexs para subexpressões. Vamos mostrar alguns exemplos de como usar expressão regular para extrair e substituir uma parte de uma variável de string usando essas três funções. Na parte inferior da página é uma explicação de todos os operadores de expressão regular, bem como as funções que funcionam com expressões regulares. Exemplo 1: um pesquisador tem endereços como uma variável de string e quer criar uma nova variável que contenha apenas os códigos postais. Exemplo 2: Temos uma variável que contém nomes completos na ordem do primeiro nome e depois do sobrenome. Queremos criar uma nova variável com o nome completo na ordem do último nome e, em seguida, primeiro nome separado por vírgula. Exemplo 2: as datas foram inseridas como uma variável de string, em alguns casos o ano foi inserido como um valor de quatro dígitos (o que o Stata geralmente espera ver), mas em outros casos foi inserido como um valor de dois dígitos. Queremos criar uma variável de data no formato numérico com base nessa variável de string. Esta tarefa pode ser facilmente processada com comandos Stata regulares, veja nossa página de FAQ. Minha variável de data é uma string, como posso transformá-la em uma variável de data que a Stata pode reconhecer para obter informações sobre como fazer isso. Nós incluímos este exemplo aqui para fins de demonstração, não porque as expressões regulares são necessariamente a melhor forma de lidar com essa situação. Nessas situações, expressões regulares podem ser usadas para identificar casos em que uma seqüência de caracteres contém um conjunto de valores (por exemplo, uma palavra específica, um número seguido de uma palavra, etc.) e extraia esse conjunto de valores da cadeia inteira para uso em outro lugar. Exemplo 1: Extraindo códigos zip dos endereços Vamos começar com algumas entradas falsas de endereços. Para encontrar o código postal, procuraremos um número de cinco dígitos dentro de um endereço. O comando gen (short for quotgeneratequot) abaixo mostra a Stata para gerar uma nova variável chamada zip. O resto do comando é um pouco complicado, o quotifquot é avaliado primeiro, se (regexm (endereço, 0-90-90-90-90-9)) pesquisa o endereço da variável para um número de cinco dígitos e, se puder Encontre um número de cinco dígitos no endereço da variável. Os regexs (0) indicam que o Stata deve definir o valor do zip para ser igual a esse número de cinco dígitos. Nós indicamos que queremos um número de cinco dígitos especificando 0-9 cinco vezes. Salvo indicação em contrário, use um,, ou. Marca, um e apenas um dos caracteres contidos nos suportes será combinado. Isso significa que o encadeamento de cinco dessas expressões juntos nos permitirá encontrar uma string de exatamente cinco dígitos. Observe que o 0-9 indica que a expressão deve corresponder a qualquer caractere de 0 a 9 (isto é, 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9 são todas as correspondências). Exemplo 1, Variação Número 1 No nosso exemplo simplificado acima, nenhum dos endereços tem números de rua de cinco dígitos. E se houver endereços com números de rua de cinco dígitos Vamos ver outro conjunto de dados de endereços falsos e ver o que acontece quando tentamos usar o mesmo código acima. Aparentemente, isso não está funcionando corretamente, uma vez que as últimas duas linhas do zip variável pegaram os números de rua desses endereços em vez de códigos postais. Neste conjunto de dados, o código postal aparece no final da seqüência de endereços. Se assumirmos que este é o caso de todos os endereços nos dados, o remédio será realmente simples. Podemos especificar quot0-90-90-90-90-9quot que instrua Stata para encontrar um número de cinco dígitos no final da string. Exemplo 1, número de variação 2 Algumas vezes o código postal também inclui a extensão de quatro dígitos e o nome do país também pode aparecer no final do endereço, como em alguns dos endereços mostrados abaixo. Neste tipo de situação mais realista, o código nos exemplos anteriores não funcionará corretamente, pois há caracteres extras após o código postal a ser extraído. Aqui é como podemos fazê-lo usando uma expressão regular mais complicada. O que adicionamos na expressão regular é este sub-: quot-0-9 a-zA-Zquot. Existem três componentes nesta expressão regular. - - combinando zero ou mais guinadas quot-quot 0-9 - combinando zero ou mais números a-zA-Z - combinando zero ou mais espaços ou letras em branco Estas adições nos permitem combinar os casos em que há caracteres que se seguem após o zip Codifique e extraie o código postal corretamente. Observe que também usamos quotregexs (1) quot em vez de quotregexs (0) como fizemos anteriormente, porque agora estamos usando subexpressões indicadas pelo parêntese em quot (0-90-90-90-90-9) quot . Outra estratégia que pode funcionar melhor em alguns casos é a expressão regular. Neste exemplo, o período (ou seja.) Corresponde a qualquer entidade, e o asterix sozinho () corresponde a qualquer caractere. Juntos, os dois indicam que o número que estamos procurando não deve ocorrer no início da string, mas pode ocorrer em qualquer lugar depois. Exemplo 2: Extraindo o primeiro nome e o sobrenome e alterando sua ordem. Temos uma variável que contém um nome completo das pessoas na ordem do primeiro nome e depois do sobrenome. Queremos criar uma nova variável para o nome completo na ordem do último nome e, em seguida, primeiro nome separado por vírgula. Para começar, vamos fazer um conjunto de dados de amostra. Agora precisamos capturar a primeira palavra e a segunda palavra e trocá-los. Aqui está a expressão regular para este propósito: ((a-zA-Z) (a-zA-Z)). Existem três partes nesta expressão regular: (a-zA-Z) - subexpressão capturando uma string consistindo de letras, minúsculas e maiúsculas. Este será o primeiro nome. - correspondência com espaço (s). Este é o espaçamento entre o primeiro nome e o sobrenome. (A-zA-Z) - subexpressão que captura uma string que consiste em letras. Este será o último nome. Isso realmente funciona. Vejamos como os regexs funcionam neste caso. Regex realmente identifica uma série de seções, com base em toda a expressão, bem como as subexpressões. O código a seguir usa regexs para colocar cada um desses componentes (subexpressões) em sua própria variável e depois exibi-los. Exemplo 3: valores de dois e quatro dígitos para o ano. Neste exemplo, temos datas inseridas como uma variável de string. O Stata pode lidar com isso usando comandos padrão (veja quotMy data variable é uma string, como posso transformá-la em uma variável de data Stata pode reconhecer quot), estamos usando isso como um exemplo do que você poderia fazer com expressões regulares. O objetivo deste processo é produzir uma variável de string com o ano apropriado de quatro dígitos para cada caso, o que a Stata pode converter em uma data facilmente. Para isso, começaremos separando cada elemento da data (dia, mês e ano de dois ou quatro dígitos) em uma variável separada, então atribuiremos o ano correto de quatro dígitos aos casos em que atualmente apenas Dois dígitos, finalmente, concatenamos as variáveis para criar uma variável de cadeia única que contenha meses, dias e quatro dígitos. Primeiro, insira as datas: Em seguida, queremos identificar o dia do mês e colocá-lo em uma variável chamada dia. Para fazer isso, solicitamos que o Stata encontre o dia olhando o início da string (ou seja, a data), para um ou mais valores de 0 a 9. (Em outras palavras, procure um número no início da linha, já que sabemos que a primeira série de números é o dia.) Gerar um novo dia variável. E configurá-lo igual a esse valor. A linha de sintaxe abaixo encontra o mês procurando uma ou mais letras juntas na seqüência de caracteres. Em seguida, gera o mês variável e o ajusta igual ao mês identificado na string. O ano é onde as coisas ficam mais complexas. Observe que os valores para atribuir séculos são baseados no meu conhecimento dos meus dados. Em primeiro lugar, extraímos todos os dígitos por ano. Usamos o operador quotquot para indicar que a busca é do final da string. Em seguida, transformamos a variável de string em uma variável numérica usando a função Statas quotrealquot. A próxima ação envolve lidar com dois dígitos começando com quot0quot. Isso corresponde aos últimos anos no século XXI. Para transformá-los em anos de quatro dígitos, concatenamos (usando a) a seqüência identificada (o ano de dois dígitos) com a string quot20quot. Em seguida, encontraremos os anos de dois dígitos 10-99 e concatenaremos essas strings com a string quot19quot. Finalmente, criamos a data variável2 que é nossa data contendo apenas quatro dígitos. (Podemos usar as três variáveis, dia, mês e ano para criar uma variável de data usando as funções de data de Stata.) Expressões regulares As expressões regulares são, em geral, uma maneira de procurar e, em alguns casos, substituir a ocorrência de Um padrão dentro de uma string com base em um conjunto de regras. Essas regras são definidas usando um conjunto de operadores. A tabela a seguir mostra todos os operadores que a Stata aceita e explica cada um. Observe que, no Stata, expressões regulares sempre ficam entre aspas. Os colchetes indicam que um dos caracteres dentro dos suportes deve ser combinado. Por exemplo, se eu quisesse procurar uma única letra entre f e m, eu escrevi quotf-mquot Um intervalo especifica que qualquer valor dentro desse intervalo é aceitável. Isso é sensível a maiúsculas e minúsculas, então a-z não é o mesmo que A-Z, se qualquer caso pode ser contado como uma partida, inclua a-zA-Z. Os valores numéricos também são aceitáveis como intervalos (por exemplo, 0-9). Um período corresponde a qualquer personagem. Permite que você combine caracteres que geralmente são operadores de expressões regulares. Por exemplo, se você quisesse combinar um quotquot, você digitaria em vez de apenas um único. Corresponde zero ou mais dos caracteres na expressão anterior. Por exemplo, se eu quisesse combinar um número composto de um ou mais dígitos se houver um número, mas ainda quiser indicar uma correspondência se o resto da expressão se encaixa, eu poderia especificar 0-9 Combina um ou mais dos personagens Na expressão anterior. Por exemplo, se eu quisesse combinar uma palavra contendo qualquer combinação de letras, eu especificaria a-zA-Z Corresponde zero ou uma da expressão anterior. Quando aparece no início de uma expressão, um quotquot indica que a seguinte expressão deve aparecer no início da string. Quando aparece no final de uma expressão, um quotquot indica que a expressão anterior deve aparecer no final da string. Por exemplo, se eu quisesse combinar um número que era a última coisa a aparecer no final de uma string, eu especificaria quot0-9quot O operador lógico ou, indicando que a expressão que o precede ou o seguem se qualifica como uma partida. Cria uma subexpressão dentro de uma expressão maior. Útil com o quotorquot perator (ou seja), e ao extrair e substituir valores. Por exemplo, se eu quisesse extrair um valor numérico que eu sei, segue diretamente após uma palavra ou conjunto de letras, eu poderia usar a expressão regular a-zA-Z (0-9), isso corresponde a toda a expressão, mas permite que você Para selecionar a parte nos parênteses (chamada de substring). Manusear substrings é discutido em maior detalhe abaixo. Essas expressões podem ser combinadas para procurar uma grande variedade de strings. Como mencionado acima, existem três tipos de funções que podem ser pré-formadas com expressões regulares no Stata (se você for criativo, você pode fazer qualquer outra coisa usando essas funções, mas as ferramentas básicas são as funções do Stata). A Stata tem comandos separados para cada um dos três tipos de ações que as expressões regulares podem executar: regexm - usado para encontrar cadeias correspondentes, avalia para um se houver uma correspondência e zero, de outra forma, regexs - usado para retornar a n th substring dentro de uma expressão combinada Por regexm (portanto, regexm deve sempre ser executado antes dos regexs, observe que um quotifquot é avaliado primeiro mesmo que apareça mais tarde na linha de sintaxe). Regexr - usado para substituir uma expressão correspondente com outra coisa. Cada um deles tem uma sintaxe ligeiramente diferente. A linha abaixo mostra a sintaxe para regexm. Ou seja, a função que corresponde à sua expressão regular, onde a string pode ser uma string que você digita em si mesmo, uma string de uma macro ou, mais comumente, o nome de uma variável. A expressão regular é a expressão regular para a string que você gostaria de encontrar, observe que ela deve aparecer entre aspas. Para regexs, isto é, para recuperar a totalidade ou uma porção de uma string, a sintaxe é: Onde n é o número atribuído à substring que deseja extrair. As substrings são realmente divididas quando você executa o regexm. Toda a substring é retornada em zero, e cada substring é numerada sequencialmente de 1 a n. Por exemplo, regexm (907-789-3939, (0-9) - (0-9) - (0-9)) retorna o seguinte: Observe que nas subexpressões 1, 2 e 3, os traços são descartados, pois Eles não estão incluídos nos parênteses que marcam as subexpressões. Você pode dar uma outra olhada em como isso funciona usando a seguinte sintaxe, que usa o comando de exibição para executar a função. Como eles são funções, os comandos regex funcionam dentro de outros comandos (por exemplo, gerar), mas não podem ser usados por conta própria (ou seja, você não pode iniciar um comando no Stata com regexm (.)). O conteúdo deste site não deve ser interpretado como um endosso de qualquer site, livro ou produto de software específico da Universidade da Califórnia.
Descargo de responsabilidade Pode haver um alto grau de risco na negociação de divisas e, por esse motivo, alguns investidores podem decidir que não é adequado para eles. Existe um considerável grau de alavancagem envolvido que, embora possa funcionar em seu favor, também pode trabalhar contra você. Você deve ter uma nota cuidadosa de seu nível de experiência, seu propósito de investir e quanto risco você está preparado para aceitar. É sempre possível que você possa perder uma parte, ou mesmo tudo, ou seu investimento inicial, e segue que você nunca deve investir dinheiro que não pode perder. Isso se aplica a qualquer forma de investimento. Existem certos riscos associados à negociação cambial, e se você tiver dúvidas, você deve tomar conselhos de um consultor financeiro independente. Todas as opiniões oferecidas na FXHQ são as opiniões de autores individuais, e eles não concordam necessariamente com as opiniões da FXHQ ou a administração da empresa. Erros e omissões podem ocorrer em d...
Comments
Post a Comment