Tag

programação em economia Archives - Análise Macro

Começando a programar com o R

By | Hackeando o R

Há algumas semanas, publiquei nesse espaço sobre por que você deveria pensar seriamente em começar a programar. Passadas as festas de final de ano, volto ao tema dando um direcionamento para quem ficou interessado. Vou mostrar como começar a programar com o R.

Antes de tudo, é preciso que você tenha os programas necessários. Serão três programas: \mathbf{R}, \mathbf{RStudio} e \mathbf{MikTex}. Não se preocupe, posto que são todos programas gratuitos e com download seguro. Desse modo, para que não tenhamos problemas, siga a sequência abaixo:

O \mathbf{RStudio} é uma IDE amigável que nos permite emular todos os códigos do \mathbf{R}, visualizar gráficos, ver o histórico de nossas operações, importar dados, criar scripts, etc. Com o \mathbf{RStudio}, poderemos otimizar o nosso trabalho de análise de dados, de maneira que a ter mais facilidade para interagir com a linguagem.

A figura acima resume as quatro principais partes de uma tela do \mathbf{RStudio}. Na parte superior esquerda é onde ficará o nosso editor de scripts. Um script é uma sequência de comandos com um determinado objetivo. Por exemplo, você pode estar interessado em construir um modelo univariado para fins de previsão do índice BOVESPA. Para isso, terá de primeiro importar os dados do Ibovespa, bem como fazer uma análise descritiva inicial dos dados. Depois, com base nessa análise inicial, você terá de decidir entre alguns modelos univariados distintos. De posse da sua decisão, você enfim construirá um modelo de previsão para o índice BOVESPA. Essa sequência de linhas de comando pode ficar armazenada em um script, com extensão .R, podendo ser acessada posteriormente por você mesmo ou compartilhada com outros colegas de trabalho. Para abrir um novo script, vá em File, New File e clique em R Script.

Na parte inferior esquerda, está o console do R, onde você poderá executar comandos rápidos, que não queira registrar no seu script, bem como será mostrados os outputs dos comandos que você executou no seu script.

Já na parte superior direita, está o Environment, onde ficam mostrados os objetos que você cria ao longo da sua seção no RStudio. Por fim, na parte inferior direita, ficarão os gráficos que você solicitar, bem como pacotes que você instalou, alguma ajuda sobre as funções e os arquivos disponíveis no seu diretório de trabalho.

Agora que você já instalou os programas e já conhece um pouco do ambiente do \mathbf{RStudio}, podemos começar a brincar um pouco. Para isso, antes de mais nada é preciso definir o seu diretório de trabalho ou a pasta onde ficará salvo o seu script. Uma vez definido, você poderá importar arquivos, colocar figuras no seu documento \LaTeX, etc. Logo, dois comandos são importantes para isso. O primeiro é o getwd, para você ver o seu atual working directory. O segundo é o setwd, para você setar o seu diretório de trabalho.


setwd('C:/Users/Vítor Wilher/Dropbox/VW Economista')

Uma vez setado o seu diretório de trabalho, você poderá importar dados contidos naquela pasta. Assim, é um ponto importante realizar isso antes de qualquer coisa. Caso já tenha um script de R, por suposto, uma vez abrindo-o, o RStudio setará automaticamente o diretório onde o mesmo esteja.

Na maior parte do tempo, você estará basicamente manipulando objetos dentro do \mathbf{R}. Seja lidando com objetos criados por terceiros, seja criando seus próprios objetos. As principais estruturas de dados dentro do \mathbf{R} envolvem vetores, matrizes, listas e data frames. Abaixo colocamos um exemplo da estrutura mais simples do \mathbf{R}: um vetor que exprime a sequência de 1 a 10.


vetor <- c(1:10)

Milhares de pacotes a sua disposição

O \mathbf{R} é uma linguagem aberta, onde qualquer pessoa em qualquer parte do mundo pode dar a sua contribuição. Em geral, elas fazem isso através de pacotes, que são coleções de funções que fazem algum coisa dentro do \mathbf{R}. Veremos muitos desses pacotes ao longo do nosso curso. A instalação de pacotes é feita primariamente pelo CRAN, através da seguinte função:


install.packages('tidyverse')

Uma vez instalado, os seus pacotes ficam armazenados na pasta library da versão correspondente do seu \mathbf{R}. Uma outra forma muito comum de instalar pacotes é através do GitHub, uma plataforma bem bacana utilizada por desenvolvedores para compartilhar códigos. Ali ficam armazenados pacotes em desenvolvimento, que ainda não estão disponíveis no CRAN. Para instalar um pacote via GitHub, você deve ter instalado primeiro o pacote devtools. O código abaixo exemplifica com a instalação do pacote brasileiro rbcb.


library(devtools)
install_github('wilsonfreitas/rbcb')

Na próxima semana, escrevo sobre as principais estruturas de dados no \mathbf{R}. Até lá!

________________________

Por que aprender a programar?

By | Hackeando o R

Eu comecei a utilizar o \mathbf{R} há cerca de 6 anos, influenciado por amigos. Mas minha introdução ao mundo da programação foi bem anterior, como comento brevemente na sequência desse post. Especificamente em relação à estatística, minha introdução ao mundo dos programas estatísticos foi através do Eviews, ainda nos tempos da graduação em economia, como provavelmente muitos dos que me leem agora. Ainda que seja possível programar no Eviews e em outros pacotes estatísticos fechados (que precisam de licença), as vantagens do \mathbf{R} são inúmeras, como comentarei mais à frente. Por ora, talvez seja necessário tecer algumas palavras sobre por que afinal é preciso aprender uma linguagem de programação.

Eu poderia simplesmente falar que o mundo está mudando, que cada vez mais empregos e empresas têm exigido conhecimentos de programação. E isso de fato é verdade, o que por si só gera uma necessidade de saber programação. São cada vez mais frequentes os anúncios de vagas de emprego/estágio onde o recrutador coloca como conhecimento diferencial saber alguma linguagem de programação como \mathbf{R}, voltada para análise de dados. Com o avanço das bases de dados, em pouco tempo isso deixará de ser diferencial e passará a ser mandatório, como falar inglês ou saber Excel Avançado.

Mas, aqui entre nós, acho que é meio chato aprender algo por necessidade, não é mesmo? Mesmo que seja uma necessidade real do mercado. Por isso, vou contar um pouco sobre a minha motivação principal para começar a aprender \mathbf{R}.

Minha estória com programação, na verdade, começou há muito tempo atrás, quando entrei para o meu primeiro estágio. Que não foi em economia. Comecei a trabalhar com 16 anos, em um estágio em uma operadora de telecomunicações. Havia feito Escola Técnica na área. No estágio, fui designado para trabalhar com centrais telefônicas de grande porte, cuja interface era feita através de um terminal [remoto ou local] onde o operador escrevia linhas de comando que emulam uma espécie de programação funcional. Seja para listar status do software/hardware da central, seja para criar/modificar objetos do software.

A linguagem da central telefônica era bastante ampla em termos de código, de modo que para fazer grandes modificações na base de dados, era possível escrever programas que automatizavam a tarefa para o operador. Um exemplo prático disso foi a adoção do oitavo dígito nos telefones fixos. Imagina ter que mudar um a um os milhares de telefones existentes nas bases de dados de todas as centrais telefônicas da operadora em questão? 

Impraticável, não é mesmo?

Pois é. Justamente por essa capacidade de automatizar as coisas que a programação acabou me encantando e desde então nunca mais parei de estudar o assunto.

Aplicar isso à economia seria um pulo...

Eu estava um pouco cansado de apertar botões e fazer tarefas repetitivas em pacotes estatísticos como o Eviews, então parecia natural aprender uma forma de automatizar as coisas, como eu fiz durante 7 anos na indústria de telecomunicações - tempo maravilhoso, diga-se. Essa, afinal, era uma baita motivação para mim: aplicar a mesma ideia dos meus anos de telecom à economia. Provavelmente, você também passe por isso no seu trabalho, não é mesmo? Talvez não propriamente com o Eviews, mas com o Excel.

Motivação esclarecida, mas por que o \mathbf{R}, você pode perguntar.

Essa é de fato uma boa pergunta. Por que não aprender a programar no próprio Eviews ou mesmo no Excel? Entre as inúmeras vantagens do \mathbf{R}, posso destacar:

  • A existência de uma comunidade grande e bastante entusiasmada, que compartilha conhecimento todo o tempo. Para grande parte dos problemas, basta jogar a sua dúvida no google e vai aparecer algo sobre o assunto;
  • O \mathbf{R} é gratuito, open source, de modo que você não precisa comprar licenças de software para instalá-lo;
  • A linguagem está consolidada para análise de dados, com inúmeras bibliotecas (pacotes) disponíveis em estatística, econometria, machine learning, importação, visualização e tratamento de dados;
  • Dispõe de ferramentas poderosas para comunicação dos resultados da sua pesquisa, seja em forma de um website, dashboard ou em formato de relatório pdf;
  • Com o \mathbf{R}, você consegue automatizar tarefas cansativas de coleta, tratamento, análise e apresentação de resultados através de scripts que podem ser armazenados/compartilhados com demais colaboradores, gerando maior transparência e reprodutibilidade do trabalho de análise de dados.

Ao aprender \mathbf{R}, você conseguirá integrar as etapas de coleta, tratamento, análise e apresentação de dados em um único ambiente. Não fará mais sentido ter de abrir o Excel, algum pacote estatístico, depois o power point ou o word, depois um compilador de pdf para gerar seu relatório. Todas essas etapas serão feitas em um único ambiente. Na verdade, em um único arquivo. E essa talvez seja a grande motivação para você entrar de cabeça nesse mundo.

Ao longo das próximas semanas, publicarei nessa seção Dicas de \mathbf{R} exemplos de como o \mathbf{R} pode ajudar nas tarefas de coleta, tratamento, análise e apresentação de dados, seja qual for o dado ou a área de atuação. Até lá!

________________________

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais
e conteúdos exclusivos sobre Análise de Dados!

Assinar Gratuitamente