Analisi statistica di dati biomedicidomenicovistocco.it/teachingMaterials/scuola... · Beamer...
Transcript of Analisi statistica di dati biomedicidomenicovistocco.it/teachingMaterials/scuola... · Beamer...
ANALISI STATISTICA DI DATIBIOMEDICIR, RSTUDIO & DINTORNI
domenicovistocco.it
Updated: 2017/04/27
Laboratorio di Indagini Campionarie e Analisi dei DatiFile: R-scuola-specializzazione-medicina
Perchè anche (proprio) R?
1
La cassetta degli attrezzi: il necessario
# www.r-project.org
# www.rstudio.com
2
La cassetta degli attrezzi: una panoramica
CRAN Task View: https://cran.r-project.org/web/views/
Librerie (pacchetti) disponibili sul CRANnrow(available.packages())
[1] 10443
A questi bisogna aggiungere un gran numero di pacchettidisponibili su altri canali (github, R-forge, ...)
3
La cassetta degli attrezzi: una panoramica
CRAN Task View: https://cran.r-project.org/web/views/
Nome Descrizione
Bayesian Bayesian InferenceChemPhys Chemometrics and Computational PhysicsClinicalTrials Clinical Trial Design, Monitoring, and AnalysisCluster Cluster Analysis & Finite Mixture ModelsDifferentialEquations Differential EquationsDistributions Probability DistributionsEconometrics EconometricsEnvironmetrics Analysis of Ecological and Environmental DataExperimentalDesign Design of Experiments (DoE) & Analysis of Experimental DataExtremeValue Extreme Value AnalysisFinance Empirical FinanceFunctionalData Functional Data AnalysisGenetics Statistical GeneticsGraphics Graphic Displays & Dynamic Graphics & Graphic Devices & VisualizationHighPerformanceComputing High-Performance and Parallel Computing with RMachineLearning Machine Learning & Statistical LearningMedicalImaging Medical Image Analysis
3
La cassetta degli attrezzi: una panoramica
CRAN Task View: https://cran.r-project.org/web/views/
Nome Descrizione
MetaAnalysis Meta–AnalysisMultivariate Multivariate StatisticsNaturalLanguageProcessing Natural Language ProcessingNumericalMathematics Numerical MathematicsOfficialStatistics Official Statistics & Survey MethodologyOptimization Optimization and Mathematical ProgrammingPharmacokinetics Analysis of Pharmacokinetic DataPhylogenetics Phylogenetics, Especially Comparative MethodsPsychometrics Psychometric Models and MethodsReproducibleResearch Reproducible ResearchRobust Robust Statistical MethodsSocialSciences Statistics for the Social SciencesSpatial Analysis of Spatial DataSpatioTemporal Handling and Analyzing Spatio-Temporal DataSurvival Survival AnalysisTimeSeries Time Series AnalysisWebTechnologies Web Technologies and ServicesgR gRaphical Models in R
3
La pagina web di R
# mirror CRAN# manuali# The R journal
4
La pagina web di RStudio
# IDE per R
# Evidenziazione dellasintassi
# Gestione semplificata delworkspace
# Gestione semplificata deiplot
# Reportistica
# Pacchetti più popolari
5
1. Installare R2. Installare RStudio
Overview
1. Diamo un’occhiata?
2. Una panoramica
3. Importazione/esportazione dati
4. Gestione/manipolazione dati
5. Grafica
6. Analisi statistica
7. Reportistica7
DIAMO UN’OCCHIATA?
Un assaggio
Di cosa si tratta?
# un ambiente integrato per l’analisi dei dati (numerica,tabellare e grafica)
# un linguaggio a tutti gli effetti# inspirato al linguaggio S (sviluppato da John Chambers
presso gli AT&T Laboratories, con il contributo di DouglasBates, Rick Becker, Bill Cleveland, Trevor Hastie, DarylPregibon and Allan Wilks.
# il progetto parte nel 1997 su iniziativa di Robert Gentlemane Ross Ihaka ("R & R") del Statistics Departmentdell’Università di Auckland (Nuova Zelanda)
9
Pro e contro
Punti di forza:
# Open source (GNU GpL)# Offre una varietà di tecniche statistiche sia di base che avanzate# Grafica avanzata e personalizzabile# Estensibile# Veloce prototipazione# Multipiattaforma (ambiente, dati e script)# Ricchezza delle librerie aggiuntive# Possibilità di utilizzare codice C, Fortran, ecc.# Reportistica
Punti di debolezza:
# Curva di apprendimento ripida# Lentezza (non compilato)# Ambiente non user–friendly
10
Caratteristiche
Linguaggio:
# di tipo espressione# funzionale# orientato agli oggetti
Modalità d’uso:
# interattiva# programmazione
Da non dimenticare:
# case–sensitive# > prompt principale# + prompt di continuazione istruzione
11
Caratteristiche
Linguaggio:
# di tipo espressione# funzionale# orientato agli oggetti
Modalità d’uso:
# interattiva# programmazione
Da non dimenticare:
# case–sensitive# > prompt principale# + prompt di continuazione istruzione
11
Caratteristiche
Linguaggio:
# di tipo espressione# funzionale# orientato agli oggetti
Modalità d’uso:
# interattiva# programmazione
Da non dimenticare:
# case–sensitive# > prompt principale# + prompt di continuazione istruzione
11
R
12
RStudio
13
Dove sono le istruzioni?
14
Come consultare il manuale
Ricerca generica nell’help in linea:
> help.start()
> help.search(''parolaChiave'')
> help.search('parolaChiave')
> apropos(''parolaChiave'')
> apropos('parolaChiave')
Ricerca specifica nell’help in linea:
> help(''mean'')
> ?mean
> example(mean)
Attenzione (parole riservate e istruzioni di controllo del flusso):
> ?if
> ?''if''
15
Una ricetta . . .
. . . mille ricette
> ?seq
16
Chiamata di una funzione
# sintassi di chiamata per nome> seq(from = 1, to = 10, by = 2)
> seq(from = 1, by = 2, to = 10)
# sintassi di chiamata per posizione> seq(1, 10, 2)
> seq(10, 1)
# polimorfismo (oggetti)> seq(from = 1, to = 10, by = 2)
> seq(from = 1, to = 10, length.out = 50)
17
Le variabili
Regole nomenclatura:
# combinazioni di caratteri e numeri# non sono consentiti spazi# attenzione alle maiuscole/minuscole# il nome deve iniziare con una lettera o con un punto
(preferibilmente da evitare)# ovvero non può iniziare con un numero (neanche se dopo
il punto)
18
Operatore assegnazione
# < −# − ># �
NOTA: l’assegnazione è distruttiva
Espressione tipica
# nomeVariabile operatoreAssegnazione espressione
Assegnazione esplicita ed implicita
19
Per gli schizzinosi
Ogni espressione ha un equivalente in termini di funzione
# variabile1 <- 10
assign('variabile1', 10)
# > variabile3 * 10
> '*'(variabile3,10)
20
Strutture dati (cenni, per ora)
# vettori# matrici# liste# data.frame# tibble
21
Operatori
# Operatori aritmetici> ?Arithmetic
# Operatori relazionali (o di confronto)> ?Comparison
# Operatori logici> ?Logic
> ?base::Logic
# Regole di priorità> ?Syntax
Le parentesi tonde possono essere usate per cambiarel’ordine 22
I file di R
# file comandi (script)# file dati (workspace)# file grafici (vari formati)# file output (Rmarkdown, notebook, html, ...)
23
UNA PANORAMICA
Cosa ci (vi) aspetta?
Importazione
ed
esportazione
dei dati
readxl
foreign
readr
base R
Gestione e
manipolazione
dei dati
dplyr
reshape
base R
Grafica
ggplot2
base R
Analisi
statistica
mosaic
base R
Reportistica
knitr
rmarkdown
Markdown
25
IMPORTAZIONE/ESPORTAZIONE DATI
Importazione ed esportazione dei dati
Comandi per l’importazione/esportazione dei dati
27
GESTIONE/MANIPOLAZIONE DATI
Gestione e manipolazione dei dati
Script per la gestione/manipolazione dei dati
29
GRAFICA
La grafica
Script per i comandi grafici
31
ANALISI STATISTICA
Analisi statistica
Script per i principali metodi di analisi statistica (1 e 2 campioni)
33
REPORTISTICA
La reportistica
Reportistica: Rmarkdown, notebook
35
Titoli di coda...
# Quanto presentato oggi è solo una parte di un sistemaopen–source in continua evoluzione
# È possibile, anzi quasi certo, che ci siano modi alternativiper fare le stesse cose che vi ho presentato
# È sicuramente certo che ci siano modi migliori (più efficaci– efficienti) per fare le stesse cose che vi ho presentato
# Basta interrogare la rete ;-)Un esempio:r kaplan-meier survival analysis
Detto questo, se posso esservi utile:
# Website: domenicovistocco.it# mail: [email protected]
36