Programma
Modulo 1: l'Analisi dei Dati con Python
Cos'è l'analisi dei dati e l'importanza di Python come strumento per i data scientist.
Panoramica su Python per l'analisi dei dati: librerie principali, strumenti di sviluppo.
Installazione e configurazione dell'ambiente di lavoro: Jupyter Notebooks, Anaconda, VS Code.
Introduzione a Python: sintassi, strutture dati e operazioni di base.
Modulo 2: Librerie Fondamentali per l'Analisi dei Dati in Python
NumPy: gestione di array, operazioni matematiche avanzate, manipolazione di dati numerici.
Pandas: creazione e gestione di DataFrame, operazioni su tabelle e serie temporali.
Matplotlib e Seaborn: visualizzazione di dati, grafici e tracciamento di informazioni.
le operazioni di importazione, esportazione e manipolazione di file CSV, Excel, SQL.
Modulo 3: Pulizia e Preparazione dei Dati con Python
Gestione dei dati mancanti: metodi per rilevare e trattare i valori nulli o NaN.
Trattamento delle anomalie e dei dati fuori scala (outliers).
Conversione dei tipi di dati: stringhe, numeri, date.
Tecniche di normalizzazione e standardizzazione dei dati.
la gestione delle categorie e variabili categoriche.
Modulo 4: Esplorazione dei Dati e Analisi Statistica Descrittiva
Statistiche di base: media, mediana, deviazione standard, quartili, distribuzioni.
Esplorazione univariata e bivariata dei dati: distribuzioni, correlazioni, tendenze.
Tecniche di visualizzazione dei dati: grafici a dispersione, box plot, istogrammi.
Analisi delle relazioni tra variabili: correlazione, covarianza, visualizzazione tramite heatmaps.
Modulo 5: Lavorare con Dati Temporali in Python
Manipolazione di date e orari con Pandas: conversione, fusione e calcoli su serie temporali.
Resampling e aggregazione dei dati temporali: giornaliero, settimanale, mensile.
Analisi delle serie temporali: identificazione di tendenze, stagionalità e cicli.
Visualizzazione delle serie temporali: trend lineari, stagionalità, e indicatori.
Modulo 6: Tecniche di Raggruppamento e Aggregazione dei Dati
Raggruppamento di dati con Pandas: groupby, aggregazione e trasformazione.
Tecniche avanzate di aggregazione: conteggio, media ponderata, somma, massimo e minimo.
Gestione dei dati gerarchici e multi-indice con Pandas.
Analisi del comportamento per categorie, segmentazione e analisi comparativa.
Modulo 7: Data Wrangling e Integrazione di Dati Provenienti da Fonti Diverse
Fusione di dati: merge, concat e join in Pandas.
Lavorare con più fonti di dati: CSV, Excel, database SQL, API, e JSON.
Gestione di dati sparsi e distribuiti: importazione e trasformazione dei dati.
Normalizzazione e denormalizzazione di tabelle: unire, separare e manipolare colonne.
Modulo 8: Visualizzazione Avanzata dei Dati con Python
Creazione di grafici avanzati con Matplotlib e Seaborn.
Grafici di distribuzione: violin plot, kde plot, histogrammi e distribuzioni.
Visualizzazione di grafici multivariati: heatmaps, pairplot, facetted plots.
Introduzione a Plotly per la visualizzazione interattiva dei dati.
Modulo 9: l'Analisi Predittiva con Python
Cos'è l'analisi predittiva e come applicarla con Python.
machine learning: concetti base, supervised vs unsupervised learning.
Preparazione dei dati per i modelli predittivi: divisione del dataset in training e test set.
Utilizzo di scikit-learn per creare modelli di regressione e classificazione di base.
Modulo 10: Modellazione e Validazione dei Modelli con Python
Introduzione ai modelli di machine learning: regressione lineare, regressione logistica, alberi decisionali.
Valutazione delle performance del modello: metriche di errore, accuratezza, precisione, recall.
Tecniche di validazione incrociata (cross-validation) per evitare l'overfitting.
Ottimizzazione del modello: grid search, random search, tuning dei parametri.
Modulo 11: Deep Learning per l'Analisi dei Dati
Cos'è il deep learning e come si applica all'analisi dei dati.
Architetture di base: reti neurali, reti neurali convoluzionali (CNN) e reti neurali ricorrenti (RNN).
Introduzione a Keras e TensorFlow: creazione di modelli di deep learning.
Addestramento di modelli di deep learning per il riconoscimento di immagini, testo e sequenze temporali.
Modulo 12: Tecniche Avanzate di Machine Learning con Python
Tecniche avanzate di machine learning: random forests, boosting, e bagging.
Introduzione agli ensemble methods e l’uso di XGBoost per la classificazione e la regressione.
Tecniche di riduzione della dimensionalità: PCA, t-SNE per visualizzazione.
Analisi delle performance e ottimizzazione dei modelli.
Modulo 13: Analisi di Reti e Dati Complessi con Python
l'analisi delle reti: grafi, nodi e collegamenti.
Utilizzo della libreria NetworkX per costruire, analizzare e visualizzare reti.
Applicazioni: analisi di reti sociali, rete di trasporto, connessioni tra persone e articoli.
Algoritmi avanzati di grafi: ricerca del cammino più breve, centralità e clustering.
Modulo 14: Big Data e Python: Tecniche di Analisi su Dati Grandi
l’analisi di Big Data con Python.
Uso di Dask per la gestione di dataset che non possono essere caricati completamente in memoria.
Lavorare con PySpark per eseguire analisi distribuite su grandi volumi di dati.
Ottimizzazione delle performance: utilizzo parallelo, cluster computing e distribuzione dei carichi di lavoro.
Modulo 15: Progetti Finali e Applicazioni Reali
Applicazione pratica delle tecniche apprese per l'analisi di dataset reali.
Progetti di analisi dei dati in vari settori: sanità, finanza, marketing, e-commerce.
Creazione di dashboard interattive con Dash e Streamlit.
Come documentare e presentare i risultati dei progetti di Data Science con Python.