Como o tempo de processamento varia conforme o tamanho dos dados?
Se você está processando todos os elementos de dois conjuntos de dados e um deles é maior, então o conjunto maior levará mais tempo para processar. No entanto, é importante perceber que o quanto mais tempo leva nem sempre é diretamente proporcional ao quanto ele é maior. Ou seja, se você tem dois conjuntos de dados e um tem o dobro do tamanho do outro, não é garantido que o maior levará o dobro do tempo para processar. Pode levar 1,5 vez mais ou até quatro vezes mais. Isso depende de quais operações são usadas para processar o conjunto de dados.
Neste exercício, você vai usar o pacote microbenchmark, que foi abordado no curso Writing Efficient R Code.
Observação: os números são especificados em notação científica $$1e5 = 1 * 10^5 = 100.000$$
Este exercício faz parte do curso
Processamento de Dados em Escala no R
Instruções do exercício
- Carregue o pacote
microbenchmark. - Use a função
microbenchmark()para comparar os tempos de ordenação de vetores aleatórios. - Chame
plot()emmb.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Load the microbenchmark package
___
# Compare the timings for sorting different sizes of vector
mb <- ___(
# Sort a random normal vector length 1e5
"1e5" = sort(rnorm(1e5)),
# Sort a random normal vector length 2.5e5
"2.5e5" = sort(rnorm(2.5e5)),
# Sort a random normal vector length 5e5
"5e5" = sort(rnorm(5e5)),
"7.5e5" = sort(rnorm(7.5e5)),
"1e6" = sort(rnorm(1e6)),
times = 10
)
# Plot the resulting benchmark object
___(mb)