La seconda edizione di “pigR: R per pigri”, edito dalla Basilicata University Press è disponibile a questo link. A differenza della prima edizione, dalla versione on-line è possibile accedere anche alle versioni .pdf e ePub. Il codice è disponibile nel repository su GitHub.
Dalla copertina: Questo materiale (pigR: R per pigri) nasce da diversi anni di esperienza (frustrante) di insegnamento di corsi di “Statistical computing with R”1 per dottorandi di ricerca. È destinato soprattutto a chi si occupa di scienze sperimentali e parte da una conoscenza limitata sia della statistica che dell’uso di linguaggi e ambienti di programmazione, e ha la necessità (per varie ragioni) di passare a qualcosa di più complesso, e di farlo nel minor tempo possibile. Il testo potrebbe anche essere utile a chi si occupa di digital humanities.
L’idea è:
- fornire una visione di insieme di R come linguaggio/ambiente e della sua utilità
- aiutare gli utenti (potenziali) a individuare le proprie necessità
- fornire percorsi guidati per set di necessità “standard” e per livelli diversi di interazione, indicando agli utenti le risorse migliori (ovviamente, le migliori secondo me)
L’approccio è quello di fornire il minimo indispensabile di informazioni per consentire un apprendimento rapido ed efficace, ma, al tempo stesso, tracciare una sorta di mappa (soprattutto con l’uso di hyperlink e note2) per navigare in quel Mare magnum che è la documentazione (libri, siti web, forum, etc.) su R come linguaggio e sull’analisi grafica e statistica con R per le scienze sperimentali e non solo. Si tratta quindi di un approccio sostanzialmente pragmatico che probabilmente farà arricciare più di un naso (e qualche coda), ma la mia sincera speranza è che risparmi qualche esperienza frustrante.
Anche per queste ragioni ho preso la (sofferta) decisione di spostare il capitolo sul data wrangling e sulla programmazione alla fine del libro. Molti testi online (come Just enough R, YaRrr!, etc.), che hanno lo scopo di permettere agli utenti di iniziare a usare R per la grafica e per la statistica il più rapidamente possibile, non hanno un capitolo specifico sulla programmazione e sul data wrangling. Al contrario, altri, con maggiore enfasi sulla scienza dei dati (come R for data science, o Statistical inference via data science) dedicano capitoli specifici a questi argomenti. Infine, negli ultimi anni l’esplosione dei Large Language Models come ChatGPT, Gemini e, in particolare Claude, oltre all’integrazione di assistenti basati sull’intelligenza artificiale in tutti i principali software e ambienti di programmazione3 hanno illusoriamente semplificato la scrittura di codice per l’analisi dei dati per i principianti (e anche, perché no, dei professionisti). Diventa quindi sempre più difficile convincere i più pigri che, anche per usare un assistente AI, qualcosa di programmazione bisogna capirla… Nella mia esperienza, gli utenti più inesperti e privi di un background in informatica trovano la parte sulla programmazione “respingente”, anche quando sono interessati a usare R per l’elaborazione statistica, probabilmente perché non ne riescono a comprendere l’utilità. Per questo illustrerò, quando serve, qualche funzione essenziale per la manipolazione dei dati e la programmazione e lasciando alla fine il resto (che poi è tanta roba).
Una nota finale sugli esempi: per comprendere l’uso di R occorre studiare degli esempi di codice, che includono l’uso di set di dati. R base e tutti i pacchetti includono questi set di dati che solo raramente sono dati collegati in qualche modo alle diverse branche della biologia4. Per semplificare le cose e diminuire il rischio che i dati proposti in questo libro scompaiano, ho preferito usare set di dati inclusi nei pacchetti di R.