Problemas de atualizacao (i.e., vc atualiza o R e seus pacotes e coisas magicamente deixam de funcionar) costumam acontecer quando vc deixa de fazer os upgrades com alguma frequencia. O R possui dispositivos eficientes para avisar-lhe de mudancas, mas se os autores do seu pacote preferido nao os utilizam, entao e' algo para vc reclamar para os autores dos pacotes. Explico:

O R possui uma atualizacao "majoritaria" a cada ano (em geral, em abril; costumava ser a cada 6 meses, mas os guRus julgaram que 1 ano e' melhor). Nesta atualizacao, o R muda de 3.1.x para 3.2.x, etc... Junto com ele, muda a maioria dos pacotes. Os desenvolvedores dos pacotes recebem a recomendacao de informar ao usuario final que a API mudara'... Se eles nao o fazem, ai' o problema e' outro.... Os pacotes mantidos pelo core (por exemplo, o pacote Matrix) usam essa estrategia, que funciona assim:

- O pacote hoje tem uma funcao hipotetica chamada "minhaFuncao" em abril de 2014;
- O autor decide substituir a "minhaFuncao" por "funcaoComUmNomeMelhor", mas nao altera o pacote ainda;
- Em abril de 2015, o autor implementa "funcaoComUmNomeMelhor" e usa o metodo ".Deprecated" para avisar o usuario que "minhaFuncao" sera substituida por "funcaoComUmNomeMelhor"... Nesse periodo, as duas funcoes sao validas no R;
- Em abril de 2016, o autor remove "minhaFuncao" e substitui o metodo ".Deprecated" por ".Defunct". Nesse ponto, todo mundo que tentar usar "minhaFuncao" recebera uma mensagem de erro e a mensagem de que "minhaFuncao" foi substituida por "funcaoComUmNomeMelhor";
- Em abril de 2017, o autor remove o ".Defunct"...

O problema e' que nem todo desenvolvedor esta' disposto a fazer isso... Mas, note que isso nao e' problema do R, mas do modo que o desenvolvedor distribuir o seu software. Por sinal, o prazo de 1 ano nao e' estipulado, pode ate' ser gosto do desenvolvedor usar um ciclo de 2 meses, ou 6... sei la'... mas existem as ferramentas.

Como eu procedo em geral? Uso ferramentas de pesquisa reprodutivel como Sweave e knitr. Em particular, ao montar um script, eu tenho os registros exatos de cada versao de pacote que estou utilizando... Assim, posso garantir um cenario de reprodutibilidade.

b


Em 14 de julho de 2014 11:46, Luiz Roberto Martins Pinto <luizroberto.uesc@gmail.com> escreveu:
Caros amigos da lista.

Eu sou um iniciante no uso do R.

Depois que comecei a utilizá-lo a análise de dados ficou mais divertida e criativa. Sinto-me livre... incrível!!! O uso do Tinn-R também é um fator motivacional para mim, devido à simplicidade de uso.

Todavia, como iniciante, tenho tido algumas dificuldades em referência às atualizações do R e dos pacotes.

Certa vez atualizei o R e algumas funções/pacotes deixaram de funcionar. Quase entrei em pânico, posto que jamais pensei que a simples atualização do R pudesse causar tanto transtorno. Acabei gastando muito tempo procurando erros no script, até que alguém sugeriu que o script poderia não rodar pela simples atualização do R.

A atualização de pacotes é outro problema. Quando atualizei o R na última vez uma função que utilizava parou de funcionar. Então precisei de refazer parte importante do script.

Diante do exposto vejo que preciso ter:
1) cópia dos pacotes;
2) cópia da versão do R utilizada em cada script

É assim que vocês procedem?

É possível que o R seja melhorado/atualizado sem prejuízo no uso dos scripts?

É possível que os autores dos pacotes façam suas atualizações sem perda de funcionalidade das funções anteriormente liberadas? Ex. liberar o LSmatrix e LSmeans (informando que esta [e uma versão mais atualizada) e manter o popMeans e popMatrix? 

É querer muito? Talvez, para o expert em R estas questões sejam simplórias, e até idiotas, mas para alguns poucos (espero) simples usuários como eu estas questões são relevantes.

Luiz Roberto.



Luiz Roberto Martins Pinto
Prof. Pleno/DCET/UESC
Laboratório de Estatística Computacional
Universidade Estadual de Santa Cruz
Ilhéus-Bahia

luizroberto.uesc@gmail.com
skype: lrmpinto

_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.



--
 
Benilton Carvalho on about.me
 
Benilton Carvalho
about.me/benilton