“pacote ‘foo’ não está disponível” – O que fazer quando R diz que não pode instalar um pacote

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br


[This article was first published on Dean Attali’s R Blog, and kindly contributed to R-bloggers]. (Você pode relatar problemas sobre o conteúdo desta página aqui)


Quer compartilhar seu conteúdo em R-bloggers? clique aqui se você tiver um blog, ou aqui se não tiver.

Este erro comum significa que o pacote que você está procurando não pode ser instalado a partir do CRAN. É assim que você resolve. –

A linguagem R é famosa entre seus usuários por apresentar frequentemente mensagens de erro inúteis. Uma das mensagens de erro que quase qualquer usuário R na história viu é “o pacote ‘foo’ não está disponível (para a versão R xyz)”, que viria depois de tentar instalar o pacote “foo” do CRAN usando install.packages("foo").

Às vezes, essa mensagem chega em momentos muito inesperados, como quando você tem certeza de que conseguiu instalar este pacote todos os dias no ano passado, então por que não funcionaria agora? Embora esta mensagem não seja completamente enigmática, também não é muito útil. Tudo o que nos diz é que sua sessão R pensa que o pacote não está disponível no CRAN, mas pode haver muitos motivos para isso e cada um requer uma solução diferente.

Abaixo estão alguns dos motivos comuns pelos quais me deparo com esse erro, e eles estão listados em ordem cronológica que eu procuro quando obtenho o erro.

Nota: Esta não é uma lista exaustiva de todos os motivos pelos quais um pacote não é instalado, mas espera-se que cubra a maioria dos casos. Se você tiver mais alguma coisa a acrescentar, me avise!

1. Erro ortográfico

A primeira coisa que faço é verificar se escrevi o pacote corretamente. Isso significa que a capitalização também deve estar correta! Por exemplo, se você executar install.packages("Rmarkdown"), ele falhará porque o nome do pacote é “rmarkdown” (minúsculas). Procure o nome do pacote e verifique se a grafia está correta. Protip: usar copiar e colar é uma boa maneira de garantir isso.

2. Verifique sua rede

Depois de verificar se a grafia do pacote está correta, a próxima coisa que faço é verificar se há conexão com a Internet. Isso pode parecer óbvio, mas é muito fácil de passar despercebido e, às vezes, você pode ficar tão preso a escrever códigos que não percebeu que o WiFi de uma hora no café expirou e que você não está mais conectado. Se o seu computador não consegue acessar o CRAN, faz sentido que R não encontre o pacote no CRAN!

3. Verifique a rede do CRAN

Em algumas ocasiões, não consegui instalar nenhum pacote, embora claramente tivesse internet. Isso é muito raro, mas é possível que o espelho CRAN padrão esteja desativado. Portanto, depois de verificar minha própria conexão de rede, aprendi a também verificar se o espelho principal do CRAN está ativo visitando seu site. Se estiver inativo, você pode esperar até que ele volte a funcionar ou usar um espelho CRAN diferente (usando o repos parâmetro de install.packages())

4. Certifique-se de que o pacote seja lançado no CRAN

Muitas vezes você recebe um pedaço de código de um colega que tem 10 diferentes library() chamadas no topo usando pacotes dos quais você nunca ouviu falar. Você tenta instalar todos eles e um dos pacotes apresenta este erro. Não é incomum que esse erro aconteça simplesmente porque o pacote não está realmente no CRAN. O pacote que você está tentando instalar pode estar no GitHub ou Bioconductor ou em qualquer outro repositório. Normalmente, uma rápida pesquisa no Google ajudará você a encontrar onde o pacote está hospedado. Se não estiver no CRAN, você precisará seguir as instruções do pacote para instalá-lo.

Leia Também  Visualizando a pandemia de COVID-19 | R-bloggers
cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br

5. Certifique-se de que o pacote não foi removido do CRAN

Às vezes, um pacote que estava anteriormente no CRAN não está mais no CRAN, o que pode ser muito frustrante. Muitos scripts e pacotes pressupõem que uma vez que um pacote está no CRAN, isso significa que ele é permanente e estável e que install.packages() deve funcionar para sempre. É uma suposição compreensível de se fazer, mas às vezes os pacotes são removidos do CRAN (geralmente porque eles não passam mais em todas as verificações do CRAN, e o mantenedor não corrigiu no tempo determinado).

Você pode verificar se um pacote ainda está no CRAN visitando sua página CRAN (https://cran.r-project.org/package=PACKAGE_NAME). Se você acertar uma página de erro 404, isso significa que o pacote provavelmente nunca esteve no CRAN. Se você vir todas as informações sobre o pacote, significa que o pacote está no CRAN e deve ser instalável. No entanto, se você receber uma mensagem como “Pacote ‘foo’ foi removido do repositório CRAN.”, Então o pacote não está mais disponível.

Quando você se encontra nessa situação, tem algumas opções para tentar.

Opção 1: use o repositório GitHub de origem

Há alguns meses, eu tinha um script que rodava a cada poucos dias ao longo de vários meses e, um dia, ele parou de funcionar aleatoriamente. Acontece que falhou porque tentou instalar o pacote aws.s3, mas o pacote tornou-se recentemente órfão e foi removido do CRAN. Muitos pacotes R são hospedados no GitHub, e uma rápida pesquisa no Google por “r aws.s3 github” revelou que este pacote também está no GitHub. Qualquer pacote R no GitHub pode ser instalado usando remotes::install_github(), então eu simplesmente substituí o install.packages() ligar com remotes::install_github("cloudyr/aws.s3").

Opção 2: usar o espelho CRAN somente leitura do GitHub

Se o pacote não tiver seu próprio repositório GitHub, outra opção é usar o espelho GitHub do CRAN. Qualquer pacote no CRAN, incluindo pacotes que foram excluídos, tem um repositório GitHub somente leitura que atua como um espelho para o código-fonte do pacote. Usando o espelho CRAN do GitHub, eu poderia instalar o pacote usando a mesma função e apenas especificando o repositório CRAN: remotes::install_github("cran/aws.s3").

Opção 3: instalar uma versão arquivada do CRAN

Na semana passada, tentei executar um script muito antigo meu que usava o ProbitSpatial pacote. A página CRAN do pacote me informa que o pacote foi arquivado há alguns meses. Quando um pacote é arquivado, todas as versões anteriores lançadas para o CRAN no passado estão disponíveis no arquivo do CRAN desse pacote. Olhando para o arquivo você pode ver quais versões existem, e qualquer versão no arquivo do CRAN pode ser instalada usando devtools::install_version(). No meu caso, havia uma versão “1.0” no arquivo, então pude instalar o pacote com devtools::install_version("ProbitSpatial", "1.0").

Opção 4: instalar da fonte

Se acontecer de você colocar as mãos no código-fonte do pacote (na forma de um .tar.gz arquivo), você pode instalar o pacote usando esse arquivo. Eu pessoalmente não tive que recorrer a isso, mas é uma opção. Você pode instalar um pacote se tiver a fonte localmente usando install.packages('/path/to/package/ProbitSpatial_0.1.tar.gz', repos = NULL, type="source").

Leia Também  Cinco fatores ao longo do ciclo de negócios



cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br