Comparando tempos de leitura de arquivos CSV e RDS
Uma das tarefas mais comuns é ler dados de arquivos CSV. No entanto, para arquivos CSV grandes isso pode ser lento.
Uma boa estratégia é ler os dados e salvar como um arquivo binário do R (rds) usando saveRDS().
Para ler o arquivo rds, usamos readRDS().
Observação: Como rds é o formato nativo do R para armazenar objetos únicos, você não introduz nenhuma dependência de terceiros que possa mudar no futuro.
Para fazer o benchmark das duas abordagens, você pode usar system.time().
Essa função retorna o tempo necessário para avaliar qualquer expressão em R. Por exemplo, para medir quanto tempo leva para calcular a raiz quadrada dos números de um a dez milhões, você escreveria o seguinte:
system.time(sqrt(1:1e7))
Este exercício faz parte do curso
Escrevendo código R eficiente
Instruções do exercício
Os arquivos "movies.csv" e "movies.rds" contêm data frames idênticos com informações sobre 45.000 filmes.
- Usando a função
system.time(), quanto tempo leva para ler o arquivo CSV comread.csv("movies.csv")? - Repita para o arquivo rds,
"movies.rds", usandoreadRDS().
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# How long does it take to read movies from CSV?
system.time(read.csv(___))
# How long does it take to read movies from RDS?
___