Anaconda - Piattaforma per il Data Science con Python

Pubblicato da Michele Saba

In questa lezione parliamo di Anaconda, la piattaforma per il Data Science con Python più usata al mondo, che vede tra i suoi clienti più importanti aziende quali BMW, Samsung e Cisco.


Perché utilizzare Anaconda?

La grande popolarità di Anaconda è data dal fatto che semplifica sensibilmente il processo di setup di un ambiente di sviluppo per il Data Science con Python, racchiudendo in una sola distribuzione tutto ciò di cui si ha bisogno per iniziare da subito a programmare: un ambiente di sviluppo integrato chiamato Spyder, Jupiter Notebook, l'interprete Python, un gestore di package e ambienti virtuali dedicato chiamato Conda, e circa 300 librerie installate e pronte all'uso come Pandas, NLTK, Numpy, Matplotlib, Requests, SQLAlchemy e così via.


Come installare Anaconda

Per installare Anaconda nel nostro computer per prima cosa andiamo nel sito ufficiale di Anaconda e scarichiamo il file di installazione per il nostro sistema operativo: Windows, MacOS o Linux. Eseguiamolo e seguiamo le istruzioni.

Anaconda Installer

Come abbiamo detto all’inizio, dopo l’installazione avremo a disposizione nel nostro computer diversi nuovi strumenti. Vediamo nel dettaglio a che cosa servono i programmi inclusi nella distribuzione, tra cui Conda, Anaconda Navigator e Anaconda Prompt.


Che cos’è Conda?

Lo strumento principale che utilizzeremo è Conda, il gestore di pacchetti open source per Python. Conda permette di creare ambienti virtuali indipendenti l'uno dall'altro, in modo da poter installare e gestire diverse versioni di librerie e pacchetti senza che questi entrino in conflitto tra loro. Si tratta di uno strumento molto popolare soprattutto nella comunità scientifica e di analisi dei dati perché semplifica la gestione di progetti complessi.

Adesso che abbiamo installato la distribuzione Anaconda, possiamo utilizzare Conda in molti modi, ma vediamo innanzitutto che cosa sono Anaconda Navigator e Anaconda Prompt.


Anaconda Navigator

Uno dei punti di forza di questa distribuzione è l'interfaccia grafica inclusa chiamata Anaconda Navigator. Ci permette di gestire tutti gli aspetti della piattaforma, semplificando il ulteriormente il processo di personalizzazione della distro e rendendo Anaconda quasi un must per tutti quei professionisti, ricercatori o appassionati del settore a cui piace avere tutto operativo da subito.

Una volta avviato Anaconda Navigator ci troviamo davanti alla Home:

Anaconda Navigator Home

Senza dover procedere ulteriormente in eventuali installazioni o configurazioni talvolta macchinose, soprattutto per chi magari si sta appena avvicinando al mondo di Python, qui abbiamo a disposizione strumenti preinstallati che possiamo utilizzare da subito per scrivere codice, ad esempio:

  • Jupiter Notebook: applicazione web che permette di creare e condividere documenti che contengono codice, testo, immagini e grafici interattivi. Questi documenti, chiamati "notebook", possono essere utilizzati per scrivere e testare codice in diversi linguaggi di programmazione, tra cui Python.
  • Spyder: un ambiente di sviluppo integrato (IDE) per Python che fornisce un'interfaccia grafica utente per scrivere, eseguire e debuggare il codice. Si tratta di uno strumento utile in particolare per coloro che lavorano con librerie scientifiche e di analisi.
  • Integrazione con Powershell e CMD: è possibile utilizzare Conda da riga di comando direttamente nelle due shell di WIndows.

Volendo possiamo installare anche le altre componenti aggiuntive disponibili nella home, come l'editor VS Code, che nella lista vedete installato perché era già presente nel mio computer.

Gestire gli ambienti virtuali con Anaconda Navigator

Se selezioniamo la voce del menù Environments, ci troveremo davanti a questa schermata:

Anaconda Navigator Environments

In questo caso sono presenti sia l’ambiente predefinito base, sia myenv, che è stato creato per questa lezione.

Il grande vantaggio di utilizzare Anaconda Navigator è che possiamo gestire gli ambienti virtuali creati con Conda direttamente da qui: possiamo creare nuovi ambienti di Python, modificare gli ambienti esistenti, aggiungere o rimuovere pacchetti e librerie, e attivare o disattivare gli ambienti per l'uso corrente. Tutto questo senza utilizzare nessuna interfaccia a riga di comando.


Anaconda Prompt

Oltre alla possibilità di utilizzare Conda sulle shell di sistema, la distribuzione di Anaconda fornisce anche un’interfaccia a riga di comando dedicata, chiamata Anaconda Prompt, disponibile per Windows e per Linux.

Con Anaconda Prompt è possibile gestire gli ambienti virtuali, crearne di nuovi, attivarli e disattivarli, installare e aggiornare librerie e molto altro. Permette anche un accesso rapido ai comandi di sistema, come la navigazione tra cartelle, la creazione di file e l'esecuzione di script.

Vediamo ora come gestire gli ambienti virtuali con Conda utilizzando Anaconda Prompt.

Creare un ambiente virtuale con Conda

Avviamo Anaconda Prompt e vediamo subito che l’ambiente (base) predefinito di Anaconda è già attivato. Creiamo un nuovo ambiente virtuale chiamato myenv con il seguente comando:

conda create --name myenv

Potete sostituire myenv con il nome che preferite dare al vostro ambiente. Per creare un ambiente virtuale con una versione di Python specifica, scriviamo:

conda create -n myenv python=3.9

Possiamo anche specificare quali pacchetti installare direttamente durante la creazione del nuovo ambiente:

conda create -n myenv python=3.10 django requests markdown

Attivare un ambiente virtuale con Conda

Per attivare l’ambiente virtuale che abbiamo appena creato digitiamo il seguente comando:

conda activate myenv

Adesso il nostro ambiente virtuale è attivo e possiamo installare altri pacchetti con il comando conda come facciamo con il comando pip, ad esempio:

conda install beautifulsoup4

Per verificare quali librerie abbiamo installato nell’ambiente virtuale attivo, utilizziamo il seguente comando:

conda list

Possiamo anche vedere una lista di tutti gli ambienti virtuali presenti, quello attivo al momento sarà preceduto da un asterisco *:

conda env list

# output
# conda environments:
#
base                     C:\ProgramData\miniconda3
myenv                 *  C:\Users\user\.conda\envs\myenv

Disattivare un ambiente virtuale con Conda

Per disattivare un ambiente virtuale scriviamo semplicemente:

conda deactivate

Eliminare un ambiente virtuale con Conda

Per eliminare l’ambiente virtuale che abbiamo creato:

conda remove --name myenv --all

Aggiornare Conda

Per aggiornare l'ambiente di Conda inseriamo il comando apposito, che scaricherà e installerà la versione più recente di Conda. Per evitare problemi di compatibilità tra pacchetti e mantenere sempre tutto aggiornato vi consigliamo di eseguirlo periodicamente!

conda update conda


Miniconda

Miniconda è una versione minimale del sistema di gestione degli ambienti virtuali Conda che include solo lo stretto necessario per eseguirlo e permette di aggiungere solo i pacchetti che si desiderano senza includere tutte librerie e programmi preinstallati. Per questo motivo Miniconda è un'alternativa più leggera e flessibile per la creazione di ambienti virtuali se non si ha in programma di utilizzare gli altri strumenti messi a disposizione da Anaconda.

Per installare Miniconda andiamo nel sito di Conda e scarichiamo l’installer per Windows, Linux o macOS. La procedura di installazione sarà identica a quella di Anaconda, ma verranno installati solo l’interprete Python, Conda e un set di librerie di base. Possiamo utilizzabile Conda tramite l'interfaccia a riga di comando Miniconda Prompt, che funziona esattamente come Anaconda Prompt.

Anaconda Navigator non è incluso nell’installazione, ma possiamo installarlo direttamente da riga di comando e gestire da lì gli ambienti virtuali e i vari package.

conda install anaconda-navigator

A seconda di dove avete scelto di installare Miniconda è possibile che sia necessario eseguire il comando come amministratore.



Vuoi imparare Python come un/a professionista? Dai uno sguardo ai nostri