Questo libro si rivolge ai programmatori che vogliono entrare nel mondo della scienza dei dati scoprendo come unire competenze che spaziano dalla matematica alle analisi di business attraverso - naturalmente - la programmazione. Lo scopo è insegnare come affrontare dati eterogenei trasformandoli in idee e insight.Nel corso dei vari capitoli vengono presentati gli elementi che un data scientist deve la definizione del dominio di analisi, il recupero e la pulizia di dati grezzi, il calcolo delle probabilità, i modelli statistici, fino all'applicazione di algoritmi di machine learning. Non mancano approfondimenti su come normalizzare e preparare i dati prima di un'analisi, oltre a suggerimenti su come presentare e comunicare i risultati in modo efficace. Tutti i passaggi chiave sono corredati da esempi di pseudocodice per illustrare al meglio gli algoritmi in uso mentre gli esempi di codice utilizzano prevalentemente il linguaggio Python.
Libro ottimo che tratta con la giusta "superficialità" gli argomenti del data science. Infatti le branche principali che vanno a formare la data science (matematica, statistica, probabilità, programmazione) sono trattate con pennellate, descrivendo in poche pagine concetti molto complessi e lasciando al lettore la facoltà di approfondire ciascuno di essi.
L'autore da per scontato la conoscenza di python, in particolare delle librerie pandas e numpy, e questo può essere sia un pro che un contro, dipende da cosa si cerca.
Tuttavia devo segnalare una grave nota negativa: la qualità del codice python scritto sui Jupyter notebooks. Per un libro di data science la qualità non è accettabile: codice striminzito e tirato via, pochissimi commenti e spiegazioni, alcuni errori veri e propri. Per esempio, nella maggior parte dei casi non viene esplicitato il URL da dove viene preso il dataset e questo è davvero grave in quanto fa perdere un sacco di tempo per trovare online quello specifico dataset. In generale c'è una asincronia tra il livello di spiegazione dei concetti citati all'inizio e il livello richiesto di python, una asincronia che non permette di identificare un lettore target.
Quindi per la parte teorica darei 5 stelle, ma per il codice python non posso dare la sufficienza.