Os ambientes virtuais podem ajudar em projetos de programação no geral ou em projetos mais focados em DataScience. Pelo que eu sei o PyCharm pede pra que você sempre selecione um ambiente pra cada projeto, mas não precisa ser um novo para cada, pode ser um mesmo ambiente para todos os projetos (obs: não utilizo muito o PyCharm, então posso estar errado).
Sobre a importância/motivo da utilização de ambientes virtuais, imagine que você está criando um código para sua empresa, e no seu computador tem o pandas versão 0.25.3
, então depois de pronto você chega no computador da empresa e quando vai executar aparece uma mensagem de erro, aí depois de pesquisar você descobre que o problema era a versão do pandas que é 0.22.1
no computador da empresa e você utilizou uma função que não existe nessa versão. Você então vai atualizar o pandas desse computador para executar o seu programa, e durante a atualização descobre que para ter o pandas 0.25.3
já tem uma dependência de outra biblioteca que o pandas precisa, então já tem mais uma biblioteca para atualizar, e assim por diante.
Esse é um exemplo bem específico, mas utilizando um ambiente virtual você pode chegar no outro computador e recriar exatamente o mesmo ambiente que você utilizou durante o desenvolvimento e evitar esses conflitos. E esses conflitos são bem mais comuns do que parece de início, e muitas vezes é complicado de diagnosticar.
Nesse link do fórum o Ronald citou umas vantagens legais de utilizar ambientes virtuais.
Com relação as bibliotecas, se eu criar um novo ambiente pelo conda, ele vai automaticamente baixar todas as bibliotecas do Anaconda como a Pandas, Numpy etc?
Quando você cria um ambiente já é feito o download e a instalação de todas as bibliotecas que você definiu e suas dependências, já está pronto para usar.
Se eu quiser continuar usando o PyCharm e o Virtualenv, como eu faço para ter acesso a essas bibliotecas todas? Tenho que baixar manualmente?
Eu acredito que você pode definir para o PyCharm utilizar o ambiente base do anaconda, com muitas das bibliotecas importantes já instaladas.
Ainda faz sentido continuar usando o PyCharm para DataScience, ou é melhor usar o Jupiter e/ou Spider que ja estão dentro do Anaconda Navigator?
Cada ferramenta é feita para um cenário de uso, então além de baseado na sua preferência você pode escolher a ferramenta baseado na sua finalidade principal.
O Jupyter notebook é ideal para fazer a limpeza e uma análise inicial dos dados quando você está conhecendo os dados. O funcionamento de execução célula a célula é bom quando você ainda não sabe os passos que vai ter que seguir.
Conhecendo agora a estrutura padrão dos dados você pode então utilizar o PyCharm para criar um código que vai ser utilizado, por exemplo, todo trimestre quando chegar os dados financeiros da empresa. O PyCharm vai ser ideal para fazer um programa para algo já planejado, o mesmo caso de uso de outros editores como o vscode ou o sublime.