workshop di chemiometria 2012 - pavia

33
Kode // R Workshop di Chemiometria Pavia 21-23 Maggio 2012 Marco Calderisi, PhD [email protected] Workshop di Chemiometria Pavia 21-23 Maggio 2012

Upload: marco-calderisi

Post on 07-Dec-2014

422 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Workshop di Chemiometria 2012 - Pavia

Kode // R

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Marco Calderisi, [email protected]

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Page 2: Workshop di Chemiometria 2012 - Pavia

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Chi “sono”

Page 3: Workshop di Chemiometria 2012 - Pavia

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Chi “sono”

Page 4: Workshop di Chemiometria 2012 - Pavia

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Chi “sono”

Prof. UlriciDipartimento di Scienze Agrarie e degli Alimenti, Università di Modena e Reggio Emilia

Page 5: Workshop di Chemiometria 2012 - Pavia

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Chi “sono”

Prof. UlriciDipartimento di Scienze Agrarie e degli Alimenti, Università di Modena e Reggio Emilia

Page 6: Workshop di Chemiometria 2012 - Pavia

Workshop di ChemiometriaPavia 21-23 Maggio 2012

KodeR

Outline

Page 7: Workshop di Chemiometria 2012 - Pavia

Idea

Workshop di ChemiometriaPavia 21-23 Maggio 2012

In tanti contesti, una gran quantità di dati viene raccolta, ma non sempre è elaborata bene o in modo sufficientemente approfondito.Molti di questi dati sono grezzi e talvolta rimangono inutilizzati.

Page 8: Workshop di Chemiometria 2012 - Pavia

Raw data

Idea

Workshop di ChemiometriaPavia 21-23 Maggio 2012

In tanti contesti, una gran quantità di dati viene raccolta, ma non sempre è elaborata bene o in modo sufficientemente approfondito.Molti di questi dati sono grezzi e talvolta rimangono inutilizzati.

Page 9: Workshop di Chemiometria 2012 - Pavia

Raw data

Idea

Workshop di ChemiometriaPavia 21-23 Maggio 2012

In tanti contesti, una gran quantità di dati viene raccolta, ma non sempre è elaborata bene o in modo sufficientemente approfondito.Molti di questi dati sono grezzi e talvolta rimangono inutilizzati.

BOH!!!

Page 10: Workshop di Chemiometria 2012 - Pavia

Raw data

Idea

Workshop di ChemiometriaPavia 21-23 Maggio 2012

In tanti contesti, una gran quantità di dati viene raccolta, ma non sempre è elaborata bene o in modo sufficientemente approfondito.Molti di questi dati sono grezzi e talvolta rimangono inutilizzati.

Page 11: Workshop di Chemiometria 2012 - Pavia

Idea

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Elaborazione

Raccolta e strutturazione dei dati(database)

Esposizione del risultati(data visualization)

Page 12: Workshop di Chemiometria 2012 - Pavia

Idea

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Software

Elaborazione

Raccolta e strutturazione dei dati(database)

Esposizione del risultati(data visualization)

Page 13: Workshop di Chemiometria 2012 - Pavia

Chi siamo

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Società (srl) di consulenza in ambito scientificoComposta da:

IoManganaro

Carluccio Zedda

Page 14: Workshop di Chemiometria 2012 - Pavia

Cosa facciamo

Workshop di ChemiometriaPavia 21-23 Maggio 2012

ANALISI DATIProcessi industriali• {Controllo di processo, ottimizzazione di

prodotto, ricerca industriale}Data mining• {Machine learning, Analisi Socio-

Economiche, Web Analytics}

SOLUZIONI SOFTWAREChemoinformatica• {Database, strumenti analitici, strumenti

predittivi}Gestione dati• {Pentaho, MySQL, PostgreSQL, PHP}

OPEN DATAAssistenza a pubbliche amministrazioni per “liberare” i datiLettura, elaborazione ed interpretazione dei dataset aperti

FORMAZIONEAnalisi statistica (R, Statistica)Trattamento dati (Pentaho, MySql/PHP, Google Refine)Chemoinformatica (metodi di base, QSAR/QSPR)Data journalism (filosofia e strumenti)

Page 15: Workshop di Chemiometria 2012 - Pavia

Lavori in corso

Workshop di ChemiometriaPavia 21-23 Maggio 2012

ANALISI DATI• Sistema di Gestione e Controllo di Impianti di Trattamento Termico - (MIUR 2007)• “Orti sociali” - (ISE-CNR)• Medical360 - (POR CREO FESR 2007-2013 Reg. Toscana)

CHEMOINFORMATICA• VEGA (Virtual models for property Evaluation of chemicals within a Global

Architecture)

OPEN DATA

• OpenMIUR (analisi dati “Scuola in chiaro”)

• PRO-DEMO (analisi del contesto socio-demografico per aree subcomunali)

Page 16: Workshop di Chemiometria 2012 - Pavia

Progetti interni

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Sviluppo funzioni con RApplicativi software QSAR/QSPR

Page 17: Workshop di Chemiometria 2012 - Pavia

R

Workshop di ChemiometriaPavia 21-23 Maggio 2012

do.plscopro (COntrollo di PROcesso)

Page 18: Workshop di Chemiometria 2012 - Pavia

R // do.pls

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Si basa sul package pls (R.Weherens, BH Mevik, KH Liland)http://cran.r-project.org/web/packages/pls/http://mevik.net/work/software/pls.html

mvr(formula, ncomp, data, subset, method = c("kernelpls", "widekernelpls", "simpls", "oscorespls", "cppls", "svdpc"),scale = FALSE, validation = c("none", "CV", "LOO"), ...)

Page 19: Workshop di Chemiometria 2012 - Pavia

R // do.pls

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Method• "kernelpls" = particularly efficient when the number of objects is (much) larger than the number of variables. The results are equal to the NIPALS algorithm• "widekernelpls" = efficient when the number of variables is (much) larger than the number of observations (es. 12x18000)• "simpls" = SIMPLS is much faster than the NIPALS• "oscorespls" = orthogonal scores algorithm, as described in Martens and Næs (1989). One of the two “classical” PLSR algorithms• "cppls" = Canonical Powered PLS is a generalisation of PLS incorporating discrete and continuous responses (also simultaneously)• "svdpc" = pcr

Page 20: Workshop di Chemiometria 2012 - Pavia

R // do.pls

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Obiettivo: eseguire una PLS con un comando unico. Questa funzione deve essere in grado di:• trattare diversi formati di input• fornire tutti gli output necessari ad una prima analisi del sistema

Page 21: Workshop di Chemiometria 2012 - Pavia

R // do.pls

Workshop di ChemiometriaPavia 21-23 Maggio 2012

per calcolare la Variance Importance in Projection si utilizza VIP.R (scritto da BH Mervik), che, al momento, funziona solo su modelli con una sola variabile risposta, basati sull’orthogonal scores algorithm.Inoltre, per semplicità di uso è stato implementato un solo tipo di cross validazione: il Leave One Out

Page 22: Workshop di Chemiometria 2012 - Pavia

R // do.pls

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Input:• x è la matrice dei predittori, accetta sia matrici che dataframe• y è la variabile risposta, può essere un semplice vettore• ncomp è il numero di variabili latenti richiesto (opzionale)• scale indica il tipo di scaling: attualmente sono stati implementati

mean centering (che è il default) ed autoscaling• graph indica il tipo di grafico, linea o punti, per i predittori (opzionale)

versione concisa: mod <- do.pls(x,y)

versione estesa: mod <- do.pls(x,y, ncomp,scale=c("mean", "autoscaling"),graph=c("line", "points"))

Page 23: Workshop di Chemiometria 2012 - Pavia

R // do.pls

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Input:• ncomp, se non specificato viene scelto il numero di LV

corrispondente al RMSECV minore• graph, se non specificato, in caso il numero di predittori sia inferiore

a 30, nei grafici dei coefficienti e dei VIP si usano i punti anzichè la linea

Da fare: • altri pretrattamenti (Pareto, SNV, normalizzazione,...)• validazione/predizione • CV tipo “venetian blinds”

Page 24: Workshop di Chemiometria 2012 - Pavia

R // do.pls

Workshop di ChemiometriaPavia 21-23 Maggio 2012

L’output è organizzato in forma di list, alle voci della quale si può accedere con il simbolo $, ad esempio mod$coefficients• modello, è il normale output di mvr • performance, varianza spiegata di predittori e variabile risposta,

RMSE, RMSECV, numero di variabili latenti selezionate• VIP• coefficients

Page 25: Workshop di Chemiometria 2012 - Pavia

R // do.pls

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Output grafici:

Page 26: Workshop di Chemiometria 2012 - Pavia

R // do.pls

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Output grafici:

Page 27: Workshop di Chemiometria 2012 - Pavia

R // do.pls

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Esempio:require(pls)

attach(gasoline)

mod1 <- do.pls(NIR, octane)

mod2 <- do.pls(NIR, octane, 3)

detach(gasoline)

Page 28: Workshop di Chemiometria 2012 - Pavia

R // copro

Workshop di ChemiometriaPavia 21-23 Maggio 2012

copro (Controllo di PROcesso) è un insieme di funzioni pensate per eseguire i passi base di un controllo di processo multivariato.

FUNZIONI:pcactrl

pcactrl_pred

contQ

contQ_pred

contT

contT_pred

scoreplot

loadplot

Page 29: Workshop di Chemiometria 2012 - Pavia

R // copro

Workshop di ChemiometriaPavia 21-23 Maggio 2012

fun pcactrl pcactrl_pred

input • d, dati• n, numero PC•cl, livello di confidenza

•d, dati• n, numero PC•cl, livello di confidenza•newd, nuovi dati

output • autovalori!• scores!• loadings•T2, matrice dei residui T2!•Q, matrice dei residui Q•T2lim, limite di confidenza per i

residui T2•Qlim, limite di confidenza per i

residui Q• t.cont, matrice dei contributi T2•q.cont, matrice dei contributi di ogni

variabile ai residui Q

•new_scores• loadings•T2.newd, matrice dei residui T2•Q.newd, matrice dei residui Q• tnewd.cont, matrice dei contributi di

ogni variabile ai residui T2qnewd.cont, matrice dei contributi di ogni variabile ai residui Q

Page 30: Workshop di Chemiometria 2012 - Pavia

R // copro

Workshop di ChemiometriaPavia 21-23 Maggio 2012

fun input output

contQ •modello PCA•numero campione

•grafico dei contributi

contQ_pred •modello PCA (da pcactrl)• predizione su modello (da

pcactrl_pred)• numero campione

•grafico dei contributi. i limiti corrispondono ai valori dei contributi massimo e minimo del modello di riferimento. non sono riferiti ad una variabile specifica

contT •modello PCA•numero campione

•grafico dei contributi

cont_pred •modello PCA (da pcactrl)• predizione su modello (da

pcactrl_pred)• numero campione

•grafico dei contributi. i limiti corrispondono ai valori dei contributi massimo e minimo del modello di riferimento. non sono riferiti ad una variabile specifica

Page 31: Workshop di Chemiometria 2012 - Pavia

R // copro

Workshop di ChemiometriaPavia 21-23 Maggio 2012

fun input output

scoreplot •mod, modello PCA (da pcactrl)•new, predizione su modello

(da pcactrl_pred)• comp1, pc asse x • comp2, pc asse y

• score plot con campioni predetti

loadplot •modello PCA (da pcactrl)• comp1, pc asse x • comp2, pc asse y

• loadings plot

Page 32: Workshop di Chemiometria 2012 - Pavia

R // Gruppo R in chemiometria

Workshop di ChemiometriaPavia 21-23 Maggio 2012

do.pls è stata (recentemente) implementata nel software “chemometrics menu” copro lo sarà

Page 33: Workshop di Chemiometria 2012 - Pavia

grazie per l’attenzione

Workshop di ChemiometriaPavia 21-23 Maggio 2012

Marco Calderisi, [email protected]