Mudando de casa

Povo, vou parar de postar aqui e começar a postar no DadosAleatórios.com.br. A minha primeira postagem já esta lá e fala sobre os microdados da RAIS.

Tipos de objetos do R

Fugindo um pouco do padrão das postagens anteriores, irei falar um pouco sobre os tipos de objetos que o R permite, mais especificamente falar dos vetores, matrizes/arrays, data frames e listas. A ideia é apresentar estas estruturas de objetos, junto com suas características. Após, apresentar os possíveis jeitos de chamar seus elementos e alguns exemplos.

Fazendo gráficos bonitos no R

Uma das etapas mais importantes na análise de dados é a visualização dos dados e análises, mas isso nem sempre (eu diria quase nunca :P) é algo simples, especialmente no R. O pacote base do R permite realizar praticamente qualquer gráfico, mas tem um custo bastante elevado (os gráficos padrões são simples, e os mais elaborados são complexos) e devido a isso criou-se a necessidade de pacotes complementares, dentre os quais o que irei falar aqui: ggplot2.

Como descrito na página do pacote, o ggplot2 é um pacote que "tenta pegar partes boas dos pacotes base e lattice e nenhuma parte ruim deles". Apesar de nunca ter usado o lattice, posso afirmar que eles tiveram sucesso nisso, pois o pacote é bastante poderoso e simples de ser utilizado. A ideia aqui é fazer um post semelhante ao que apresenta o pacote data.table, dando apenas uma introdução ao pacote mostrando os gráficos mais utilizados.

2048 para R

Um post completamente fora do padrão (grande padrão, com n = 3) do blog. Nesses últimos dias apareceu na internet o jogo 2048, onde o objetivo é ir somando quadrados iguais até chegar em 2048. Dai pensei: Por que não fazer uma versão em R? Afinal de contas, não seria o primeiro jogo que eu faria em R e seria uma boa maneira treinar algoritmos.

Analisando grandes bancos de dados no R.

Dando continuidade ao post anterior (eu juro que o próximo post não vai ser 'Fazendo algo em grandes bancos de dados no R'), vamos dar uma olhada em outro pacote que auxilia na manipulação de bancos grandes no R: o data.table. Mais uma vez, usarei os dados do ENEM 2011 como exemplo.

Como o site do data.table descreve, ele é uma versão mais incrementada do data.frame, o formato padrão de leitura de arquivos externos do R e com uma sintaxe é bastante parecida, facilitando bastante o aprendizado. A ideia do post é apresentar as principais funções do data.table e mostrar o ganho computacional dele. Ao final, um link com todos o código utilizado.

Lendo grandes bancos de dados no R.

Nada mais adequado do que a primeira postagem verdadeira do blog ser sobre o primeiro passo na análise de dados: carregar os dados para o programa. Eu nunca tive problema com isso, algumas vezes o R demorava para ler o banco, mas nunca me importei - afinal de contas, lia. Mas desde que entrei para o ObservaPOA essa realidade mudou. E me trouxe problemas. Sempre me falaram - e eu, como bom papagaio, repetia - que o R não era bom com bancos de dados grandes, e eu finalmente pude ver isso.

Ao baixar os microdados do Censo Escolar, me deparei com um arquivo de aproximados 600mb no formato largura fixa que, ao tentar ler com read.fwf(), obtive uma mensagem de erro após mais de 30 minutos de processamento. Perguntando em fóruns, consegui ler os dados. Perfeito, hora de ir para o próximo banco de dados! Fui para os microdados do ENEM, e me deparei com algo pior: um arquivo de 6gb que nem os comandos que funcionaram no Censo Escolar conseguiram ler. E la fui eu em busca de uma solução.

A solução encontrada foi utilizar o pacote RSQLite, que utiliza SQLite para manipular bancos de dados. A seguir, mostrarei 3 maneiras diferentes de usar o RSQLite, que variam de acordo com o formato do banco de dados: arquivo formatado com delimitador e arquivo formatado com largura fixa com e sem sintaxe SAS para leitura. Para tal, utilizarei os microdados do ENEM 2012 (delimitadores) e ENEM 2011 (largura fixa). Ao final, um link para os códigos utilizados junto com algumas instruções.

Ressurgindo

Passados 7 anos da criação deste blog - e da sua única postagem - resolvi ressuscitar ele. Mas nada ficar reclamando da vida, a ideia agora é de compartilhar experiências profissionais que tive, apontando as dificuldades e soluções encontradas.

As postagens terão como tema a análise de dados - geralmente públicos - e com o software R, permitindo com que todos consigam reproduzir e, por que não, ampliar as análises aqui apresentadas.

Enfim, espero que gostem do que está por vir :-)