Quero calcular / avaliar a convolução
onde é um densidade e é uma função suave com suporte compacto . A convolução não está disponível em formato fechado e preciso integrá-la numericamente. Minha pergunta é: Existe uma maneira eficiente de fazer isso? Quero implementá-lo em R, portanto, gostaria de ver se existe uma maneira melhor do que usar o comando . integrate()
@Glen_b Thanks. Para uma função univariada , acho que a integração direta pode ser mais rápida, então.
—
Cozinhe
Você pediu uma maneira eficiente - fft é realmente rápido ; requer apenas um pouco de configuração (binning, preenchimento com zeros).
—
Glen_b -Reinstate Monica
@Glen_b Sim, eu concordo que o fft é realmente rápido, mas a etapa anterior pode atrasar o processo. Vou comparar os dois métodos, de qualquer maneira. Obrigado.
—
Cozinhe
Lembro-me de usar
—
whuber
convolve
para esse fim várias vezes. Exemplos simples de trabalho aparecem em stats.stackexchange.com/a/41263 , stats.stackexchange.com/a/41255 e stats.stackexchange.com/a/49444 .
?fft
) ou o usoconvolve
. A abordagem fft exige um pouco mais de trabalho para configurar, mas é melhor se você precisar convolver várias vezes. Às vezes, leva um tempo para descobrir as configurações de argumento corretas com convolve.