Boas práticas para Upgrade de versão: R e RStudio

Quando instalo uma versão nova noto que os arquivos da anterior permanecem em disco. Não ocorre exatamente uma atualização por troca. Aparenta mais é ter instalado um ao lado da outra (mesmo?).

Por organização e ter somente arquivos da última versão, costumo é desinstalar e instalar de novo. Ambos (R + Rstudio).

Como outras pessoas gostam de fazer? Além disso costumam reinstalar todos os pacotes nesse momento, ou ir reinstalando conforme cada script anteriormente feito pedir?

Hal,

Eu não conheço nenhuma referência com “melhores práticas”, mas vou dizer como eu faço e você pode decidir se isso é o melhor para o seu caso também.

Primeiramente, eu costumo remover os arquivos da versão anterior sim. Eu não desinstalo o R, mas depois de instalar a versão nova eu prefiro remover os rastros da anterior. Eu acho que não é necessário desinstalar/reinstalar o RStudio, dado que ele não tem relação com a versão do R na sua máquina.

Feito isso, eu não costumo criar um registro de todos os pacotes que eu tinha e reinstalar todos logo que a atualização termina. Eu instalo só os pacotes que eu de fato vou usando, assim não corro o risco de ficar arrastando pacotes que não uso mais.

3 curtidas

Outro hábito que tenho logo após instalar, é setar o mesmo encoding em todas as máquinas que uso (em configurações gerais do RStudio). É que como alterno entre linux e windows, vinha enfrentando interrupções por encoding após trabalhar um script em máquinas distintas. Colocado UTF-8, embora tenho ouvido que ANSI tem a vantagem de ocupar menos espaço. Testarei no próximo estouro de memória

Hal,

Vou ser bastante categórico aqui e espero que a minha falta de nuance seja compreensível: nunca use ANSI. Na verdade, sempre use UTF-8. ANSI é um encoding mais antigo, menos comum e muito menos portátil do que UTF-8. Eu diria que, justamente porque você usa Linux e Windows, usar UTF-8 é indispensável; caso contrário, você vai batalhar com conversão de encodings grande parte do tempo (como você mesmo relatou).

Eu dei uma pesquisada rápida sobre o quanto de espaço cada encoding ocupa e de fato o ANSI é mais leve do que o UTF-8, mas eu tenho quase certeza de que essa diferença não vai valer a pena. Em primeiro lugar, a diferença não é tão grande, em segundo lugar, você vai estar dando mais trabalho para quem usa Linux/Mac e, finalmente, você vai estar violando uma recomendação expressa do desenvolvimento de pacotes:

By default, create_package() uses Encoding: UTF-8 , which should be interpreted as our very strong recommendation to use UTF-8 encoding.

No limite, se você conseguir achar uma situação em que um código só roda com ANSI, você vai essencialmente estar tornando o seu código irreproduzível em outro sistema operacional. Muito melhor seria encontrar uma forma de arrumar o código.

2 curtidas

Muito Obrigado Caio! :+1: Tenho ctz que essa recomendação me poupou tempo. Sempre ao ter problemas de RAM vou testando várias coisas, usar ANSI já estava na minha lista

Humberto

1 curtida