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.