Appaiamento di archivi nominativi Software for Automated Linkage

Transcript

Appaiamento di archivi nominativi Software for Automated Linkage
Appaiamento di archivi nominativi
Software for Automated Linkage in Italy (SALI)
Dr. Luigino dal Maso, CRO Aviano
Le procedure di appaiamento tra i casi di diversi archivi costituiscono un’opportunità
particolarmente utile per la condivisione di informazioni provenienti da fonti diverse, orientabili a
studi epidemiologici ed alla sorveglianza dei pazienti registrati in archivi di patologia. In presenza
di codici univoci di collegamento (criterio deterministico) queste procedure sono affrontabili dalla
maggior parte dei programmi di gestione dergli archivi. Nella ben più frequente evenienza della non
disponibilità di campi-chiave affidabili, emerge la necessità di software in grado di trattare archivi
di numerosità medio-alte, utilizzando i comuni dati anagrafici, anche nei casi di non perfetta
corrispondenza degli stessi, garantendo una minima perdita dei legami possibili.
Il programma SALI, sviluppato presso l’unità di Epidemiologia e Biostatistica del Centro di
Riferimento Oncologico di Aviano (PN), è nato con lo scopo di appaiare record individuali di
archivi di media grandezza (nell’ordine di 100.000 records) consentendo la possibilità di una
revisione manuale del risultato e tutelando, in ogni fase dell’operazione, la riservatezza anagrafica
degli individui trattati. Il programma è ottimizzato per una probabilità di appaiamento inferiore
all’1%, pur essendo in grado di offrire buone prestazioni anche con percentuali attese superiori
(subordinatamente alla potenza del processore)
SALI, sviluppato in linguaggio CA-Clipper, usa archivi in formato Dbase e richiede come
campi-chiave: cognome, nome e data di nascita, permettendo di tenere in considerazione possibili
errori di imputazione dei campi-chiave.
La procedura di appaiamento è basata su 7 livelli, due dei quali automatici e cinque interattivi,
nei quali l’operatore può decidere attraverso specifiche finestre se accettare o rifiutare
l’appaiamento proposto.
SALI può essere usato in ogni sistema operativo IBM-compatibile (DOS o Windows).
Istruzioni per il linkage con “SALI”
•
I files devono essere in formato .DBF (DBIII Plus o DBIV) e contenere un codice identificativo
univoco.
•
Le date devono essere trasformate in campi separati per giorno, mese, anno (formato carattere,
vedi tracciato seguente).
•
Non è necessario che i files da linkare contengano una sola volta il cognome-nome-datanas
paziente perché il programma lavora anche con multipli, ma ciò rende la fase manuale del
linkage può diventare più lunga.
•
E’, tuttavia, necessario, esista un identificativo univoco (es.: numero progressivo) dei record
altrimenti i record con lo stesso identificativo (successivi al primo) non vengono presi in
considerazione.
•
Per velocizzare la procedura, è opportuno che il file con il maggior numero di record sia il file1.
•
Esempio struttura:
File1
ID1
del record nel file1
COGN1
NOME1
GGNAS1
MMNAS1
AAAANAS1
VAR1 …
•
•
identificativo
univoco
cognome
nome
giorno nascita
mese nascita
anno nascita
altre variabili file1
File2
ID2
del record nel file2
COGN2
NOME2
GGNAS2
MMNAS2
AAAANAS2
VAR2…
identificativo
univoco
cognome
nome
giorno nascita
mese nascita
anno nascita
altre variabili file2
Quando i files sono pronti vanno collocati in una cartella (es.: c:\linkage ), preferibilmente (non
necessariamente) la stessa per files e programma.
Apparirà una piccola finestra in cui specificare l’indirizzo rispettivamente di file1, file2 (i files
vanno indicati con l’estensione .dbf) e di dove si vuole collocare il file di output (es. out.dbf).
Inserendo file1 il programma chiede:
a) se il file è stato preparato (nomi e cognomi in caratteri maiuscoli senza spazi ed
interpunzioni; per es.: “Da Vinci” e “Maria-Josè” diventeranno DAVINCI e MARIAJOSE):
rispondere “n”
b) se il file è non stato indicizzato (ordinato) per tutte le variabili-chiave: rispondere “n”
•
Inserendo file2 il programma chiede se il file è stato preparato:
•
Dopo l’invio, se non ci sono problemi (es.: files inesistenti) il programma chiede di segnalare la
posizione (ordine sequenziale) nei files delle variabili che serviranno per il linkage.
•
Fatto questo il programma chiederà l’autorizzazione per eseguire le procedure
rispondere “n”
•
Seguiranno 7 diversi livelli di linkage con un diverso trattamento delle variabili, articolati come
segue (SALI versione 3.3):
Livelloa
Cognome.
Nome.
Data nascita.
Intervento
manualeb
0
Uguale
Uno dei due nomi contenuto
nell’altro
Uguale
No
1c
Uguale
Come al livello 0, oppure i
primi 7 caratteri uguali, oppure
un nome senza la prima lettera
contenuta nell’altro
Anno uguale
No
Come al livello 1
2
Uguale
Almeno 7 caratteri
comuni e almeno 5
caratteri nella stessa
posizione
3
4
5
6
Per ogni cognome un massimo di
20 caratteri non trovati nell’altro e
una stringa comune di almeno 2
caratteri
Come al livello 1
Un cognome contenuto nell’altro
oppure i primi 7 caratteri uguali
Per ogni nome un massimo di
20 caratteri non trovati
nell’altro e una stringa comune
di almeno 2 caratteri
Un cognome contenuto nell’altro
oppure i primi 7 caratteri uguali
Come al livello 4
Per ogni cognome un massimo di
3 caratteri non trovati nell’altro e
una stringa coune di almeno 4
caratteri
Uguale (mese e giorno
possono
essere
invertiti)
Si
Come al livello 3
Si
Almeno 7 caratteri
comuni e almeno 6
nella stessa posizione
Uno dei due nomi uguale alla
prima parte dell’altro
Si
Si
Come al livello 5
Si
a
. gli appaiamenti effettuati in uno stadio precedente sono trascurati dal successivo
. dal livello 2 ogni possibile linkage viene proposto ad uno ad uno e l’operatore deve decidere se accettarlo o no.
c
. il livello 1 viene proposto in SALI3.3 dopo il livello 5 vista la minore specificità.
b
Altre caratteristiche del programma:
- è possibile saltare il livello proposto
- nomi e cognomi possono essere cancellati, criptati o lasciati invariati nel file di output
- il livello 6 può essere utilizzato solo in situazioni particolari con richiesta grande sensibilità (procedura onerosa)
•
Il programma, pur utilizzando files nominativi, non visualizza mai cognomi e nomi durante la
fase di linkage, per motivi di riservatezza.
Nei livelli con scelta manuale all’operatore verranno proposti i casi simili (tabella sopra) ed egli
verrà aiutato a scegliere se accettare il linkage o no sulla base della presentazione delle due
stringhe criptate dei nomi con lunghezza pari ai caratteri
La fase 2 (nomi e cognomi circa uguali, vedi tabella sopra) mostrerà la seguente finestra:
La fase 3 (data di nascita uguale, vedi tabella sopra) mostrerà la seguente finestra:
•
•
•
Il simbolo “*” significa “stessa lettera nella stessa posizione”
Il simbolo “$” significa “lettera contenuta nell’altra stringa, ma in posizione diversa”
Il simbolo “-“ significa “lettera diversa”
Nell’esempio sopra i due record hanno stesso nome (non mostrato, vedi tabella sopra), stessa data di
nascita, una sottostringa comune di 5 caratteri nel cognome nelle posizioni mostrate (esempio
classico di errata trascrizione di caratteri doppi nel cognome).
E’ importante sottolineare:
• Che solo la coincidenza degli asterischi indica corrispondenza delle stringhe, mentre la
coincidenza degli altri simboli, sebbene crei un effetto ottico analogo, può sottendere
differenze notevoli.
• Che rispondendo “n” (NO) alla richiesta di linkage i due casi verranno esclusi, mentre
rispondendo “y” (SI) si potrà in seguito eventualmente rifiutare il linkage in una fase
ulteriore di controllo che comporterà il confronto di ulteriori variabili presenti nei 2 archivi
(es.: comune di nascita, data di morte).
• Le diverse condizioni di lavoro (dimensione dei files da linkare, probabilità che differenze
piccole corrispondano davvero a pazienti diversi) determineranno l’opportunità di criteri di
linkage più stretti (lavoro più veloce, maggiore specificità) o più larghi (lavoro più lento,
maggiore sensibilità).
•
Alla fine della procedura il programma chiede se le stringhe con i cognomi e i nomi debbano
essere cancellate (opzione necessaria nel caso di un linkage da effettuare “in cieco” per motivi
di riservatezza) oppure no. Nel primo caso (dati sensibili), per consentire ulteriori controlli,
vengono mantenute solo le strighe di nomi e cognomi criptate tramite *, $ e -, altrimenti, se i
files sono liberamente utilizzabili dagli operatori, il file di output, oltre al tutte le variabili
linkate dei record comuni, conterrà anche i cognomi e nomi in chiaro dei due files.
•
Dopo la fine della procedura e con qualsiasi software (DB3/4, Excel, Access, ecc.), potrà essere
condotta un’ultima verifica dei record linkati (per eliminare i “falsi positivi”), tenendo presente
che ogni record contenente le variabili proveniente da entrambi i files, conterrà anche una
variabile con il “livello” di linkage effettuato. Nel caso si scelgano a priori criteri più “larghi”
di inclusione (al limite premendo sempre “y” ad ogni richiesta) si potranno selezionare i record
con livello di linkage ad es. superiori ad 1 per ricontrollarli ed effettuare a questo punto la
accettazione/rifiuto.
Bibliografia (descrizione dettagliata di SALI):
Dal Maso L, Braga C, Franceschi S. Methodology Used for “Software for Automated Linkage in Italy”
(SALI). Journal of Biomedical Informatics 2001, 34, 387-395
Il software è disponibile gratuitamente a soli fini di ricerca epidemiologica facendo richiesta scritta
a: Dr. Luigino Dal Maso, Unità di Epidemiologia e Biostatistica (e-mail [email protected])
Centro Riferimento Oncologico, v. Pedemontana occ. 12, 33081 AVIANO (PN)
Per l’uso del programma si richiede la citazione bibliografica allegata.