Todos já tiveram dificuldades ao tentar lidar com datas no R, seja por problemas de importação ou por qualquer transformação nos dados. No post de hoje, ensinamos a melhor forma de transformar dados em data no R.
No R existem diferentes tipos de dados: character, factor, logical, integer, double, date e etc. O comportamento padrão do R para reconhecimento de dados possui uma hierarquia, portanto, é possível que ao ser importado determinado conjunto de dados, eles não estejam em sua forma ideal (isto é, no seu tipo correto).
Para tanto, o pacote {lubridate} nos ajuda na missão de realizar transformações de dados em data de forma fácil funcionando em conjunto com outros pacotes da família do {tidyverse}.
No exemplo abaixo, retiramos os dados da Pesquisa Industrial Mensal direto do Sidra, utilizando o pacote {sidrar}. Na estrutura do objeto importado, vemos como o R lidou com a coluna de data, bem como o formato em que as observações estão em "anomês" (200201). O ideal é transformar no tipo de dado date e obter um formato de data mais interessante, talvez como "ano-dia-mes".
Para obter a transformação para tipo date, podemos utilizar a função ym(), que permite, através de um formato pré-estabelecido de ano e mês, como as observações se encaixam, transformar em tipo date e em um formato mais amigável (2002-01-01).
E caso não tivermos o formato de ano e mês, e sim em outro formato? Qual função ou formato podemos utilizar ? A função guess_formats() retorna o formato que o R (e consequentemente as funções do {lubridate}) reconhece para realizar a transformação. Colocamos na função os valores e a ordem do formato das observações. Com o resultado, utilizamos a função parse_date_time(), do mesmo modo que utilizamos a função ym(), porém, especificando o formato retornado por guess_formats().
Veja que utilizamos o formato "%Y%0M%, entregue por guess_formats, porém, que na prática, possui o mesmo resultado anterior.
____________________________________________
Quer saber mais?
Veja nossos cursos de R e Python aplicados para a Análise de Dados e Economia
- R para Análise de Dados
- Python para Análise de Dados
- Gráficos com ggplot2
- Estatística usando R e Python
- Machine Learning usando o R
_____________________________________________