ComeçarComece de graça

Código vetorizado: calculando uma soma de log

Uma operação comum em estatística é calcular a soma de probabilidades em log. O código a seguir calcula a soma dos logs (log-sum).

# x é um vetor de probabilidades
total <- 0
for(i in seq_along(x)) 
    total <- total + log(x[i])

No entanto, esse trecho de código pode ser significativamente melhorado usando código vetorizado.

Este exercício faz parte do curso

Escrevendo código R eficiente

Ver curso

Instruções do exercício

  • Encontre a soma dos logs de x usando as funções log() e sum(), simplificando o loop acima.
  • Guarde sua resposta no objeto log_sum.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Initial code
n <- 100
total <- 0
x <- runif(n)
for(i in 1:n) 
    total <- total + log(x[i])

# Rewrite in a single line. Store the result in log_sum
log_sum <- ___
Editar e executar o código