Riproproniamo in italiano un articolo sulle linee guida e sulle buone pratiche per gestire l’analisi statistica di un progetto. L’articolo è stato pubblicato da Tal Galil sul blog r-statistics. La raccolta di questi suggerimenti nasce dalle discussioni che si sono sviluppate su Stackoverflow e Statsoverflow, successivamente sintetizzate da chl.
Gestione dei dati
- create una struttura per mantenere tutti gli elementi al loro posto (dati, codice, immagini, ecc…) [giovanni]
- i files dei dati originali non vanno mai modificati (si potrebbe attribuirgli il permesso di sola lettura, per esempio); [whuber]
- qualsiasi modifica ai dati va sempre fatta su files nuovi/rinominati; [whuber]
- verificate la coerenza dei dati; [whuber]
Coding
- organizzate il codice sorgente in unità logiche o a blocchi; [josh reich/hadley/ars/giovanni/khader shameer]
- separate il codice sorgente da quello utilizzato per la manipolazione dei dati; [tal]
- documentate tutto, per esempio utilizzando il package [R] oxygen; [shane]
- le funzioni che avete programmato “ad hoc” vanno registrate in un file dedicato, in un nuovo enviroment o in un package; [brendan oconnor/dirk eddelbuettel/shane]
Analisi
- non scordatevi di registrare o salvare il seed quando utilizzate RNG o algoritmi stocastici (per esempio k-means); [tal]
- per analisi con metodi Monte Carlo può essere interessante salvare i paramatri in file a parte (per esempio, sumatra); [giovanni]
- non limitatevi ad un grafico per variabile, utilizzate piuttosto output grafici multivariati (per esempio Trellis) o strumenti di visualizzazione interattivi (per esempio GGobi); [tal]
Gestione delle versioni successive
- utilizzate dei .csv o strumenti simili (per esempio Git) per tener traccia dell’evoluzione del codice; [sharpie/vonc/jd long]
- non dimenticatevi del backup; [sharpie/jd long]
- tenete un log con i vostri spunti e le vostre idee di sviluppo, oppure affidatevi a strumenti come ditz; [giovanni]
Reportistica
- [R] Sweave; [matt parker]
- package [R] brew; [shane]
- package [R] R2HTML; [20/ascii]
Leave Your Response