I have read the “Should I use Anaconda Distribution or Miniconda?” article and that makes sense but doesn’t really speak to the implications of the decision so I have a few questions in regard to my situation and what the best practices are and what the implications are if I change my mind … I’d like to get it right first time if possible
I have used Anaconda and Conda on windows previously so I’m familiar with both altho no expert I’m comfortable with the CLI …
Assuming I install Miniconda and my distribution already has python installed, would I need a separate install of python via Miniconda? I hate unnecessary duplication …
In the event that I change my mind (quite possible) and decide I want to use Anaconda Distribution, can I just install it over the top of Miniconda? Or would I need to uninstall Miniconda first?
What are the best practices using Anaconda in a Linux environment and is there a handbook?
Thanks for posting. There are a lot of good questions in here, so I’ll start with your first three:
It’s generally not recommended to use the Python installed with your system for Python development for a number of reasons. Most specifically, your Linux distribution likely uses a single version of Python that will not get updated as often as you may like. Trying to update and add packages to your system Python could actually break things and may not give you the flexibility you need. Instead, it’s best practice to use separate Python installations in virtual environments for software development and experimentation. Virtual environments will enable you to use multiple versions of Python on the same machine based on what you’re trying to build/run and what you want to be compatible with. There’s more information in an article here on why you probably don’t want to use system Python. Miniconda will give you the tools to create Python environments as you need them and update them with the packages you need independently.
This is a good question. You can think of Miniconda as the “minimum install” for Anaconda. Miniconda includes conda, Python, and the base required libraries to get Python and conda running, while Anaconda includes all of that plus a few hundred extra packages that cover many of the most popular data and AI use cases. Uninstalling Miniconda would not be necessary, since the Anaconda Distribution is basically Miniconda + additional packages. There’s actually an installable package that includes everything in the anaconda installer (just named anaconda). With Miniconda, you can install the Anaconda distribution in a new environment with conda create -n my-anaconda-env anaconda which will install the latest version of the Anaconda Distribution in a new conda environment.
Hopefully that helps and if you provide more information about what you’re trying to achieve with Python, perhaps other members in the community will have additional feedback.