Dúvida Rmarkdown

Boa tarde,

Tenho uma dúvida com a compilação de documentos com rmarkdown.
Tenho um projeto com diversos scripts, cada um com inúmeras funções e variáveis. Para manter a organização, mantenho no documento apenas o código essencial, pois todas as operações e carregamento de base de dados ocorrem nestes scripts. Estes mesmos objetos estão carregados no meu environment e utilizo-os no documento.

Mas parece que a compilação ocorre em outra instância do R e não encontra os objetos, funções, pacotes carregados do meu ambiente. A “solução” é carregar os scripts R inteiros utilizando source() no documento, que carrega todo o script e é altamente contraproducente, ou ainda algo como read_chunk() que me obriga a definir chunks no código para usar. A dúvida é, tem como eu compilar com as variáveis já carregadas no ambiente? Ou ainda algo mais simples para ler apenas as variáveis que já contem meu output sem ter que recarregar todo o código ou refazer todas as operações?

Não sei se é a resposta que você esperava receber, mas acho que você precisaria aprender a criar um pacote de R! Pacotes de R são pacotes de funções e variáveis, bem como todas essas que você deve ter construído. Pra mim é a melhor maneira de organizar projetos e códigos de R.

http://r-pkgs.had.co.nz/intro.html

Talvez demore um pouco pra aprender, mas depois você vai tirar muito proveito das vantagens de se fazer um pacote de R.

1 curtida

Opa Athos, é uma solução possível sim! Mas estava procurando algo mais simples, não sei se fui claro, eu só queria renderizar com os objetos e variáveis já carregados no ambiente, aí vi algumas soluções no https://stackoverflow.com/questions/34029611/how-to-use-objects-from-global-environment-in-rstudio-markdown que faz isso sem ter que carregar tudo novamente, usando rmarkdown::render

Obrigado !

1 curtida