SMAC 1: Statistical Methods in Analytical Chemistry vol. 1
© 2003 gian piero luciani
Email : gianpiero@mac.com homepage: http://homepage.mac.com/gianpiero
Premessa:
Questo set di programmi consente di eseguire i test statistici ed i calcoli necessari a valutare la precisione (ripetibilità stretta) di un metodo di analisi chimica (in particolare) e di una serie di misure (in generale).
Questo programma nasce dalla necessità di eseguire verifiche secondo le procedure previste dal Manuale Unichim 179/01 (edizione 2001): Linee guida per la validazione di metodi analitici nei laboratori chimici Valutazione della precisione (ripetibilità stretta) di un metodo analitico eseguito in unico laboratorio da un solo operatore su di un unico strumento in un breve intervallo di tempo.
Sono stati aggiunti alcuni test proposti dal Professor Giovanni Mori Dipartimento di Chimica Generale ed Inorganica, Chimica Analitica, Chimica Fisica - Università di Parma, illustrati nel corso Qualità del dato analitico e validazione dei metodi di analisi chimica organizzato da CIMACQ (Consorzio Interuniversitario di Ricerca Metodologie Analitiche e Controllo di Qualità) presso lUniversità di Ferrara 15-16 aprile 2003.
Fonte di ispirazione ed elemento fondamentale nellimpostazione del programma è stato il volume monografico Peter C. Meier Richard E. Zünd Statistical Methods in Analytical Chemistry editore Wiley Interscience Pubblication, da cui deriva il titolo di questo software.
Licenza:
- Questo software è libero.
- Chiunque sia interessato a questo software può utilizzarlo e modificarlo liberamente senza che questo comporti alcun impegno nei confronti dellautore.
- La distribuzione di questo software è consentita a condizione che vengano distribuiti tutti i file che compongono questo software senza alcuna modifica.
- E altresì consentita la distribuzione di forme modificate adattate di questo software alle condizioni che lautore originale venga sempre citato e che non venga richiesto alcun compenso per il prodotto modificato.
- Questo software non è fornito di alcuna garanzia. Lautore ha posto la massima attenzione nella verifica delle tabelle statistiche e del codice, tuttavia non è in grado di garantirne laffidabilità assoluta. Per questo lutilizzatore che adotti questo software lo fa a proprio rischio e pericolo e sarà lunico a rispondere di eventuali danni o anomalie derivanti dalluso di questo software.
Installazione:
Questo programma è stato sviluppato su di un calcolatore (calcolatrice grafica programmabile) Hewlett Packard 48GX, il programma dovrebbe funzionare correttamente anche sui modelli HP48G, HP48G+ e HP 49; il programma non dovrebbe funzionare sui calcolatori della serie precedente HP 48S e HP 48SX.
Il programma è distribuito in forma di directory e in forma di library installabile in qualunque porta.
Lutente può utilizzare una forma o laltra a seconda delle proprie preferenze, non ci sono differenze tra le 2 implementazioni.
File:
SMAC.dir |
dimensione: |
16601,5 |
|
CRC: |
# 33302d |
SMAC.lib |
dimensione: |
16807 |
|
CRC: |
# 35075d |
|
numero: |
1701 |
Descrizione ed uso:
Le nozioni che seguono servono a spiegare lutilizzo di questo software ed a fornire uno schema logico-procedurale da seguire quando si valuta la precisione stretta di un metodo di analisi.
Non sono scritte a scopo didattico, ma come promemoria per lutilizzatore (ed anche per lautore) che si suppone abbia dato almeno una veloce lettura ai metodi citati.
Il programma si avvia con il comando SMAC

Viene proposto un elenco dei test e dei calcoli disponibili; i test sono nellordine logico in cui andrebbero eseguiti.
Per eseguire un programma si seleziona con le frecce e si preme OK o ENTER.
SWtest
Test di normalità di Shapiro-Wilk

Supponiamo di aver realizzato una serie di misure di una certa grandezza ripetute n volte, avremo allora una serie di dati che possiamo rappresentare così:
x1,x2,x3,
xn
La prima operazione da fare sarebbe quella di verificare se i dati sono distribuiti normalmente, infatti tutte le successive elaborazioni partono dal presupposto che la serie dei dati ubbidisca ad una distribuzione normale (o gaussiana).
Le misure in campo chimico soddisfano la distribuzione normale praticamente sempre, se questo test non viene superato è pertanto necessario verificare lintera procedura analitica per comprenderne il motivo poiché è molto probabile che lanomalia sia dovuta a gravi errori sistematici.
Lalgoritmo per il test di Shapiro-Wilk è il seguente:
si mettono in ordine crescente le misure:
|
x1<x2<x3<
<xn |
Si calcola la somma dei quadrati:
|
|
si calcola il parametro b: dove i coefficienti ai sono tabulati in funzione di n numero dei dati
|
|
Si calcola il parametro W:
|
|
Si trasforma il parametro W in kp: Dove gamma, eta d epsilon
sono tabulati in funzione di n numero dei dati. |
|
Il valore kp si confronta con il valore tabulato per alfa=0.05 e per
alfa=0.01, quando si verifica la condizione
allora
si può ritenere che i dati ottenuti seguono una distribuzione normale o
di Gauss.
Importante:
Questo test si applica per serie di dati compresi tra 3 e 50 misure.
kp,alfa=0.05= 1,960
kp,alfa=0.01= 2,576
Il programma richiede di inserire i dati sotto forma di matrice, ogni serie di dati dovrà comporre una colonna della matrice, il test viene quindi eseguito per ogni colonna della matrice.
Come output il programma fornisce una lista composta da - quando il
test viene superato (distribuzione normale), da * quando il test non
viene superato per alfa=0.01 ma viene superato per alfa=0.05 e da **
quando il test non viene superato per alfa=0.05 (e ovviamente alfa=0.01).
1:SWtest: { - - - * ** *}
Verificato che i dati soddisfino la condizione di normalità si prosegue cercando i dati anomali.
I dati anomali sono dati significativamente diversi dal valore medio, talmente diversi da poter essere considerati frutto di errori grossolani; è opportuno identificarli in modo da potere valutare criticamente (su base statistica e non arbitrariamente) la possibilità di scartarli per le successive elaborazioni (calcolo del valor medio, dellintervallo di confidenza, etc
).
I test considerati sono 4, sarebbero da applicare tutti e 4 e ciascuno fornisce dati indipendenti, non tutti sono egualmente potenti.
Ogni test segnalerà nessuno, uno, due o più dati con uno o due asterischi.
I dati contrassegnati da 2 asterischi ** sono anomali con probabilità >99%
I dati contrassegnati da 1 asterisco * sono anomali con probabilità >95%
Gli altri dati non sono anomali.
DXtest
Test di anomalia di Dixon

Il test di Dixon serve ad individuare 1 solo dato anomalo che sarà il più grande o il più piccolo della serie.
Lalgoritmo per il test di Dixon è il seguente:
si mettono in ordine crescente le misure: |
x1<x2<x3<
<xn
|
si calcolano in funzione di n numero dei dati
i seguenti rapporti:
|
per |
|
|
per |
|
|
per |
|
|
Il valore maggiore dei due R calcolati si confronta con un valore di R tabulato
ai livelli di confidenza alfa=0.05 e alfa=0.01, si hanno le 3 possibilità:
Rcalcolato<Ralfa=0.05 |
Il dato non è anomalo
|
|
Ralfa=0.05<Rcalcolato<Ralfa=0.01 |
Il dato è anomalo 1 asterisco
|
*
|
Rcalcolato>Ralfa=0.01 |
Il dato è anomalo 2 asterischi
|
**
|
Il programma richiede di inserire i dati sotto forma di matrice, ogni serie di dati dovrà comporre una colonna della matrice, il test viene quindi eseguito per ogni colonna della matrice.
Quindi viene prodotto il seguente output:
1:DXtest: { - 7,7**}
G1test
Test di Grubbs per un dato anomalo.

Il test di Grubbs a 1 dato serve ad individuare 1 solo dato anomalo che sarà il più grande o il più piccolo della serie.
Lalgoritmo per il test di Grubbs è il seguente:
si mettono in ordine crescente le misure: |
x1<x2<x3<
<xn |
Si calcola il valore medio e la
deviazione standard s con le seguenti formule: |
|
Si calcolano: |
|
Il valore maggiore dei due G calcolati si confronta con un valore di G tabulato
ai livelli di confidenza alfa=0.05 e alfa=0.01, si hanno le 3 possibilità:
Gcalcolato<Galfa=0.05 |
Il dato non è anomalo
|
|
Galfa=0.05<Gcalcolato<Galfa=0.01 |
Il dato è anomalo 1 asterisco
|
*
|
Gcalcolato>Galfa=0.01 |
Il dato è anomalo 2 asterischi
|
**
|
Il programma richiede di inserire i dati sotto forma di matrice, ogni serie di dati dovrà comporre una colonna della matrice, il test viene quindi eseguito per ogni colonna della matrice.
Quindi viene prodotto il seguente output:
1:G1test: { - 7,7**}
G2test
Test di Grubbs per 2 dati anomali

Il test di Grubbs a 2 dati serve ad individuare 2 dati anomali che saranno i due più grandi o i due più piccoli della serie.
Questo test è particolarmente utile ad individuare i dati anomali in quei casi in cui due valori troppo grandi o troppo piccoli esercitano un effetto di mascheramento reciproco impedendo ai test precedenti di essere individuati.
Lalgoritmo per il test di Grubbs a 2 dati è il seguente:
si mettono in ordine crescente le misure: |
x1_x2_x3_
_xn |
Si calcola |
 |
Dove: |
|
Si calcola |
|
Dove: |
|
Il valore minore dei due G calcolati si confronta con un valore di G tabulato
(diverso dal precedente) ai livelli di confidenza alfa=0.05 e alfa=0.01, si hanno
le 3 possibilità:
Gcalcolato>Galfa=0.05 |
Il dato non è anomalo
|
|
Galfa=0.05>Gcalcolato>Galfa=0.01 |
Il dato è anomalo 1 asterisco
|
*
|
Gcalcolato<Galfa=0.01 |
Il dato è anomalo 2 asterischi
|
**
|
Il programma richiede di inserire i dati sotto forma di matrice, ogni serie di dati dovrà comporre una colonna della matrice, il test viene quindi eseguito per ogni colonna della matrice.
Quindi viene prodotto il seguente output:
1:G2test: { - 2** 2**}
Htest
Test di anomalia di Huber

Il test di Huber, al contrario dei test precedenti, serve ad individuare un numero di dati anomali fino al 50% dei dati totali della serie di misure; il buon senso suggerisce di controllare il metodo quando i dati da scartare sono molti.
Lalgoritmo per il test di Huber è il seguente:
si mettono in ordine crescente le misure: |
x1<x2<x3<
<xn |
si individua la mediana xmed
|
si calcolano i residui ri |
|
si mettono in ordine crescente i valori assoluti di ri |
|
si individua la mediana dei residui rmed
|
Si confrontano i residui con il fatto 3,8rmed
e con 4,5rmed |
Si esegue il test
|
Il dato non è anomalo
|
|
|
Il dato è anomalo 1 asterisco
|
*
|
|
Il dato è anomalo 2 asterischi
|
**
|
Il programma richiede di inserire i dati sotto forma di matrice, ogni serie di dati dovrà comporre una colonna della matrice, il test viene quindi eseguito per ogni colonna della matrice.
Quindi viene prodotto il seguente output:
1:Htest: { ,64* ,63** 7,7** 1,5** 2** 2**}
Eseguiti questi test e valutati i risultati, qualora si siano scartati dei dati considerati anomali sarebbe necessario procedere nuovamente con un test di normalità si Shapiro-Wilk.
Alla fine si possono eseguire i calcoli statistici ad un livello.
CMONO VMONO
Calcolo e visualizzazione dei risultati.

Il programma CMONO esegue i calcoli e li memorizza nella variabile statistica
∑SIGMA, il programma VMONO si occupa della loro visualizzazione.
Si descrivono di seguito i calcoli eseguiti:
Simbolo
|
Descrizione
|
Formula
|
|
Valore medio
|
|
med
|
Mediana
|
si pone: x1<x2<x3<
<xn per n dispari med=x(n+1)/2 per n pari med=(xn/2+xn/2+1)/2
|
range
|
Dispersione dei dati
|
xmax-xmin
|
s-d
|
Deviazione standard
|
|
CV%
|
Coefficiente di variazione %
|
|
|
Deviazione standard della media
|
|
If
|
Intervallo di fiducia
|
|
If
|
Intervallo di fiducia della media
|
|
Il programma richiede di inserire i dati sotto forma di matrice, ogni serie di dati dovrà comporre una colonna della matrice, il programma richiede di inserire anche il livello di probabilità desiderato (0.95 per p = 95% per _ = 0.05).
Quindi esegue i calcoli e per la loro visualizzazione richiama il programma VMONO
Questultimo consente di scorrere i dati di ogni singola colonna con i tasti
frecci SU e freccia GIU'e di passare da una colonna e laltra con i tasti
programmati > e <.
Premendo OK o ENTER una copia del valore evidenziato viene riportata nello STACK dellhp, premendo CANCL si esce dal programma.
Con questo si esaurisce lo studio del caso ad un unico livello; il tipico esempio di è il calcolo della esattezza e della precisione di un metodo di analisi eseguendo un certo numero di misure su di una miscela (standard) certificata. Seguendo i passaggi sino a questo punto si è in grado di verificare se il metodo è esatto e qual è la sua precisione.
Questi test sono utili anche per verificare se la precisione del metodo al livello di concentrazione analizzato è conforme ai limiti (di legge, richiesti dagli standard interni, etc.) desiderati.
Esiste però anche il caso in cui è necessario verificare se la deviazione standard è o meno costante allinterno dellintero intervallo di misura omoschedasticità), qualora la deviazione standard dipendesse dalla concentrazione sarebbe utile calcolare una espressione per esprimerla in funzione della concentrazione.
Per fare questo è necessario applicare i test che saranno argomento del programma SMAC 2 in fase di realizzazione.
gian piero luciani
Comacchio 4 giugno 2003