ComeçarComece de graça

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

Ver curso

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 com read.csv("movies.csv")?
  • Repita para o arquivo rds, "movies.rds", usando readRDS().

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?
___
Editar e executar o código