248. Kontrola wartości niemożliwych i nielogicznych

Wartość niemożliwa lub nielogiczna nie jest po prostu „dziwną liczbą”. To obserwacja, która narusza wcześniej ustalone reguły dotyczące zakresu, formatu, jednostki, czasu albo relacji między zmiennymi. Jej wykrycie jest jednym z podstawowych etapów kontroli jakości bazy danych. Bez takiej kontroli można obliczyć poprawnie średnią, odchylenie standardowe czy model regresji dla danych, które nie opisują rzeczywistego pomiaru.

W tej lekcji omawiamy, jak systematycznie rozpoznawać takie problemy, jak prowadzić ich dokumentację i dlaczego nie wolno automatycznie usuwać każdej obserwacji odstającej. Zasady te są ważnym elementem przygotowania danych omawianego w szkoleniu na statystyk.edu.pl.

Czym są wartości niemożliwe i nielogiczne?

Wartość niemożliwa to wartość, która nie może wystąpić przy przyjętej definicji zmiennej albo narusza jej ograniczenia fizyczne, formalne lub proceduralne. Przykładami są: wiek równy -3 lata, liczba dni hospitalizacji równa 400 w badaniu trwającym maksymalnie 30 dni albo saturacja krwi wynosząca 145%, jeśli zmienna rzeczywiście oznacza procentową saturację hemoglobiny.

Wartość nielogiczna może być formalnie możliwa sama w sobie, ale pozostaje sprzeczna z inną informacją w rekordzie lub z przebiegiem badania. Przykładem jest data wizyty kontrolnej wcześniejsza niż data wizyty początkowej, ciąża u osoby zapisanej w bazie jako mężczyzna, albo pomiar ciśnienia rozkurczowego wyższy od skurczowego. Nie każda sprzeczność oznacza błąd biologiczny: czasami wskazuje na pomyłkę w kodowaniu, zamianę kolumn, błąd jednostki lub niewłaściwe przypisanie rekordu.

Współczesne ujęcia jakości danych rozróżniają między innymi integralność techniczną, kompletność, spójność i dokładność. Kontrola wartości niemożliwych i sprzecznych należy przede wszystkim do obszaru spójności, czyli zgodności wartości z regułami i relacjami określonymi przed analizą (Schmidt et al., 2021).

Dlaczego kontrola jest konieczna?

Błąd w pojedynczej komórce może zmienić wyniki analizy, zwłaszcza gdy próba jest mała, zmienna ma silnie skośny rozkład albo obserwacja wpływa na estymację parametrów modelu. Wpis „999” w zmiennej dotyczącej liczby papierosów dziennie może zostać błędnie potraktowany jako rzeczywiste spożycie. Z kolei zapis „0” może oznaczać brak objawu, ale również brak pomiaru, jeśli osoba wprowadzająca dane używała zera jako kodu technicznego.

Kontrola jakości nie służy jednak do uzyskania „ładnego” zbioru danych. Jej celem jest ustalenie, czy dane są zgodne z protokołem badania, dokumentacją źródłową i definicjami zmiennych. W badaniach klinicznych dane powinny być dokładne, kompletne i możliwe do zweryfikowania w dokumentach źródłowych. Jednocześnie badania empiryczne pokazują, że nawet rozbudowana weryfikacja nie gwarantuje całkowitego braku błędów, dlatego potrzebne są wieloetapowe i ukierunkowane kontrole (Andersen et al., 2015).

Rodzaje reguł kontroli

Reguły zakresu

Najprostsza kontrola polega na sprawdzeniu, czy wartość mieści się w dozwolonym zakresie. Zakres może być:

  • formalny – wynikający z konstrukcji zmiennej, na przykład płeć zakodowana jako 0, 1 lub 2;
  • fizjologiczny – wynikający z właściwości organizmu, na przykład temperatura ciała nie może być ujemna w skali Celsjusza, jeśli mierzono temperaturę ciała;
  • kliniczny – ustalony na podstawie wiedzy medycznej, ale wymagający ostrożności, ponieważ wartości skrajne mogą być prawdziwe;
  • protokolarny – wynikający z projektu badania, na przykład liczba wizyt albo czas obserwacji.

Jeżeli dla zmiennej x ustalono dolną granicę L i górną granicę U, podstawowa reguła ma postać:

wartość poprawna wtedy i tylko wtedy, gdy L ≤ x ≤ U

Symbol x oznacza obserwowaną wartość, L – dolną granicę dopuszczalnego zakresu, a U – górną granicę. Reguła nie mówi jeszcze, że każda wartość w zakresie jest dokładna. Informuje tylko, że nie narusza zdefiniowanego ograniczenia.

Reguły dozwolonych kategorii

W zmiennych jakościowych należy sprawdzić, czy występują wyłącznie kody przewidziane w słowniku danych. Jeżeli zmienna „status palenia” ma kody: 0 – nigdy, 1 – były palacz, 2 – aktualny palacz, to kod 3 nie powinien być bez wyjaśnienia traktowany jako nowa kategoria. Może oznaczać błąd wprowadzania albo odrębny kod braku danych.

Szczególnie ważne jest rozdzielenie wartości merytorycznych od kodów braków danych. Kody „-9”, „999” czy „brak” nie powinny być analizowane jak zwykłe wartości liczbowe. W dokumentacji trzeba zapisać, czy oznaczają odmowę, brak pomiaru, niekwalifikowanie do pomiaru, błąd techniczny czy brak informacji.

Reguły logiczne między zmiennymi

Niektórych błędów nie można wykryć, analizując pojedynczą zmienną. Potrzebne są reguły opisujące związki między co najmniej dwiema kolumnami.

  • ciśnienie skurczowe powinno być większe od rozkurczowego;
  • data zakończenia obserwacji nie powinna poprzedzać daty rozpoczęcia;
  • liczba hospitalizacji nie może być większa niż liczba dni obserwacji, jeśli obie zmienne odnoszą się do tego samego okresu;
  • jeżeli zaznaczono „brak choroby przewlekłej”, nie powinny być jednocześnie wpisane szczegółowe dane o tej chorobie bez dodatkowego wyjaśnienia;
  • jeżeli uczestnik nie został poddany badaniu laboratoryjnemu, wynik tego badania powinien być pusty albo oznaczony odpowiednim kodem, a nie równy zero.

Reguły czasowe

W badaniach podłużnych należy kontrolować kolejność zdarzeń. Przykładowa reguła brzmi:

data wizyty 1 ≤ data wizyty 2 ≤ data wizyty 3

Nie oznacza to, że wszystkie wizyty muszą odbyć się dokładnie w zaplanowanych terminach. Oznacza jedynie, że ich kolejność musi być zgodna z przebiegiem badania. Warto sprawdzać również, czy data pomiaru mieści się w okresie rekrutacji, czy uczestnik nie został wpisany po zakończeniu badania oraz czy wiek obliczony na dzień badania jest zgodny z datą urodzenia.

Wartość niemożliwa a wartość odstająca

To rozróżnienie ma znaczenie metodologiczne. Wartość niemożliwa narusza regułę wynikającą z definicji lub ograniczeń zmiennej. Wartość odstająca jest natomiast nietypowa względem pozostałych obserwacji, ale może być prawdziwa.

Temperatura ciała 70°C u dorosłego pacjenta jest prawdopodobnie błędem zapisu albo pomiaru. Temperatura 40,5°C jest skrajna, ale możliwa klinicznie. Nie wolno jej usuwać wyłącznie dlatego, że zwiększa średnią lub pogarsza dopasowanie modelu. Zanim podejmie się decyzję, należy sprawdzić dokumentację źródłową, jednostkę, urządzenie pomiarowe i kontekst kliniczny.

Wykrywanie wartości odstających metodami statystycznymi, na przykład za pomocą odległości od mediany, kwartyli lub odchyleń standardowych, jest uzupełnieniem, a nie zamiennikiem kontroli regułowej. Wartość może być statystycznie nietypowa bez bycia błędną.

Przykład 1: baza pacjentów z pomiarami ciśnienia

Załóżmy, że w badaniu pielęgniarskim zebrano dane o ciśnieniu tętniczym. W bazie znajdują się zmienne: id, data_pomiaru, sbp – ciśnienie skurczowe, dbp – ciśnienie rozkurczowe oraz pozycja – pozycja ciała podczas pomiaru.

Podczas kontroli znaleziono następujące rekordy:

ID SBP DBP Pozycja Problem
014 118 76 siedząca brak
027 85 142 siedząca ciśnienie rozkurczowe większe od skurczowego
043 1200 80 stojąca prawdopodobny błąd jednostki lub wpisu
061 0 0 leżąca możliwy brak pomiaru zakodowany jako zero

Rekord 027 narusza regułę relacji między zmiennymi. Nie należy jednak od razu poprawiać wartości na przykład przez zamianę kolumn. Możliwe, że osoba wprowadzająca dane przepisała wyniki w odwrotnej kolejności, ale równie możliwa jest pomyłka urządzenia, błędna etykieta lub niekompletny zapis. Rekord 043 wymaga sprawdzenia, czy wartość 1200 nie jest zapisem 120/80 w niewłaściwym polu. Rekord 061 trzeba skonfrontować z formularzem źródłowym: zero może być prawdziwą wartością techniczną, lecz przy ciśnieniu tętniczym najczęściej oznacza brak pomiaru albo błąd.

Przykład 2: badanie zdrowia psychicznego

W badaniu studentów zastosowano skalę depresji z 21 pozycjami, gdzie każda pozycja przyjmuje wartości od 0 do 3. Wynik całkowity powinien zatem mieścić się w przedziale:

0 ≤ wynik całkowity ≤ 63

Jeżeli w bazie występuje wynik 68, mamy do czynienia z wartością niemożliwą dla tej wersji narzędzia. Możliwe wyjaśnienia to: pomyłka przy sumowaniu, zastosowanie innej wersji skali, podwójne uwzględnienie pozycji albo błędne zakodowanie odpowiedzi.

Inny problem pojawia się wtedy, gdy jedna pozycja ma wartość 4. Cały wynik może nadal mieścić się w przedziale 0–63, ale pojedyncza odpowiedź narusza zakres. Kontrola sumy bez kontroli pozycji nie wystarczy. Dlatego walidację należy przeprowadzać na poziomie poszczególnych zmiennych, podskal i wyniku całkowitego.

Procedura postępowania krok po kroku

  1. Zdefiniuj regułę. Zapisz, co jest dozwolone, zanim zobaczysz wyniki. Reguła powinna wynikać z kwestionariusza, protokołu, instrukcji urządzenia albo uzasadnionej wiedzy dziedzinowej.
  2. Wykonaj kontrolę automatyczną. Sprawdź typ zmiennej, zakres, dozwolone kody, daty i relacje między kolumnami.
  3. Utwórz rejestr naruszeń. Zapisz identyfikator rekordu, nazwę zmiennej, wartość, regułę, wynik weryfikacji i podjętą decyzję.
  4. Porównaj z dokumentacją źródłową. Sama baza często nie pozwala rozstrzygnąć, czy wartość jest błędna.
  5. Nie nadpisuj pierwotnych danych. Zachowaj kopię surową oraz wersję oczyszczoną. Każda korekta powinna być odtwarzalna.
  6. Oznacz decyzję. Warto stosować kategorie: potwierdzony błąd, poprawiona wartość, brak możliwości weryfikacji, wartość prawidłowa mimo skrajności.
  7. Powtórz kontrolę po korektach. Naprawa jednej kolumny może ujawnić kolejne sprzeczności.

Przykład praktyczny: analiza przypadku

W badaniu pacjentów po udarze zaplanowano trzy pomiary funkcji poznawczych: w dniu włączenia, po 7 dniach i po 30 dniach. W jednym rekordzie odnotowano: data włączenia – 12 marca, pomiar po 7 dniach – 5 marca, pomiar po 30 dniach – 11 kwietnia.

Pierwsza kontrola wskazuje na naruszenie kolejności dat. Nie można jednak automatycznie uznać, że pomiar z 5 marca jest błędny. Po sprawdzeniu dokumentacji okazało się, że data włączenia została wpisana jako 12 marca zamiast 2 marca. Korekta jednej wartości rozwiązała całą sprzeczność.

Ten przykład pokazuje, dlaczego korekta powinna być oparta na źródle, a nie na intuicji analityka. Gdyby usunięto cały rekord, utracono by prawidłowe informacje o pacjencie. Gdyby natomiast bez weryfikacji zamieniono daty, można byłoby wprowadzić kolejny błąd.

Automatyzacja kontroli

Reguły można wdrażać w arkuszu kalkulacyjnym, systemie elektronicznego zbierania danych, programie statystycznym albo skrypcie. Najważniejsze jest nie narzędzie, lecz jawne zdefiniowanie reguł i zapisanie wyników kontroli.

Przykładowe komunikaty kontrolne mogą mieć formę:

  • ERROR: wiek poza zakresem 0–120;
  • ERROR: data wizyty 2 wcześniejsza niż data wizyty 1;
  • WARNING: BMI poza zakresem typowym dla badanej populacji;
  • WARNING: wynik skrajny, wymaga weryfikacji źródłowej.

Warto rozróżnić komunikat ERROR od WARNING. Błąd oznacza naruszenie reguły, które zwykle uniemożliwia bezpośrednie użycie wartości. Ostrzeżenie wskazuje obserwację wymagającą oceny, ale nie przesądza o jej niepoprawności.

Najczęstsze błędy

  • Usuwanie każdej wartości skrajnej. Skrajność statystyczna nie jest dowodem błędu.
  • Ustalanie granic po obejrzeniu danych. Takie działanie może prowadzić do dopasowania reguł do przypadkowego rozkładu próby.
  • Traktowanie kodów braków jak wartości liczbowych. Wpis 999 nie oznacza zwykle 999 jednostek badanego zjawiska.
  • Brak kontroli jednostek. Masa w gramach zamiast kilogramów albo glukoza w mg/dl zamiast mmol/l może wyglądać jak wartość niemożliwa, choć problem leży w konwersji.
  • Automatyczna zamiana wartości. Jeśli skurczowe i rozkurczowe ciśnienie zostały zamienione, nie wolno poprawiać tego bez sprawdzenia dokumentacji.
  • Nadpisywanie danych surowych. Uniemożliwia późniejsze odtworzenie decyzji i audyt zmian.
  • Kontrola tylko pojedynczych zmiennych. Wiele problemów ujawnia się dopiero przez analizę relacji między zmiennymi.
  • Brak dokumentacji reguł. Inny badacz nie powinien domyślać się, dlaczego dana obserwacja została zmieniona lub wyłączona.

Jak raportować wykryte problemy?

W raporcie z przygotowania bazy warto podać liczbę sprawdzonych rekordów, liczbę naruszeń według reguł, liczbę korekt, liczbę wartości pozostawionych po weryfikacji oraz liczbę obserwacji oznaczonych jako niepewne. Należy także opisać, czy korekty wykonano na podstawie dokumentacji źródłowej, ponownego kontaktu z uczestnikiem, informacji od osoby wprowadzającej dane czy reguły technicznej.

W badaniach obserwacyjnych transparentne raportowanie definicji zmiennych, źródeł danych, procedur pomiaru i sposobu postępowania z brakami zwiększa możliwość oceny wiarygodności wyników (von Elm et al., 2007). Kontrola wartości niemożliwych powinna być elementem dokumentacji analitycznej, nawet jeśli czasopismo nie wymaga pełnego dziennika wszystkich zmian.

Co warto zapamiętać?

  • Wartość niemożliwa narusza formalny, fizyczny, kliniczny albo protokolarny zakres zmiennej.
  • Wartość nielogiczna ujawnia sprzeczność między zmiennymi, datami lub etapami badania.
  • Wartość odstająca może być prawdziwa i nie powinna być automatycznie usuwana.
  • Reguły kontroli należy określić przed analizą i zapisać w słowniku danych.
  • Każde naruszenie trzeba, o ile to możliwe, zweryfikować w dokumentacji źródłowej.
  • Nie należy nadpisywać danych surowych; korekty muszą być udokumentowane i odwracalne.
  • Kontrola jakości obejmuje nie tylko zakresy, lecz także kody, jednostki, kolejność zdarzeń i relacje między zmiennymi.
  • Dobra baza nie jest bazą pozbawioną obserwacji skrajnych, lecz bazą, w której wiadomo, jak oceniono ich poprawność.

Źródła i dalsza lektura

  1. Jan Van den Broeck, Solveig Argeseanu Cunningham, Roger Eeckels, Kobus Herbst (2005). Data cleaning: detecting, diagnosing, and editing data abnormalities. PLoS Medicine, 2(10), e267. DOI: 10.1371/journal.pmed.0020267.
  2. Carsten Oliver Schmidt, Stefan Struckmann, Christian Enzenbach, Andreas Reineke, Jürgen Stausberg, Sarah Damerow, Claudia Ernst, Annette C. R. Rübsamen, Julia Schütt, Marianne Huebner, Börge Schmidt, Willi Sauerbrei, Adrian Richter (2021). Facilitating harmonized data quality assessments. A data quality framework for observational health research data collections with software implementations in R. BMC Medical Research Methodology, 21, 63. DOI: 10.1186/s12874-021-01252-7.
  3. Jeppe Ragnar Andersen, Bente Juel Riis, Inger Byrjalsen, Asger Bihlet, Faidra Kalakou, Hans Christian Hoeck, Gitte Hansen, Henrik Bo Hansen, Morten Asser Karsdal (2015). Impact of source data verification on data quality in clinical trials: an empirical post hoc analysis of three phase 3 randomized clinical trials. British Journal of Clinical Pharmacology, 79(4), 660–668. DOI: 10.1111/bcp.12531.
  4. World Health Organization (2017). Data quality review: a toolkit for facility data quality assessment. Module 1: Framework and metrics. World Health Organization. Źródło.
  5. Erik von Elm, Douglas G. Altman, Matthias Egger, Stuart J. Pocock, Peter C. Gøtzsche, Jan P. Vandenbroucke (2007). The Strengthening the Reporting of Observational Studies in Epidemiology (STROBE) statement: guidelines for reporting observational studies. PLoS Medicine, 4(10), e296. DOI: 10.1371/journal.pmed.0040296.
  6. Jeppe Ragnar Andersen, Bente Juel Riis, Inger Byrjalsen, Gitte Hansen, Henrik Bo Hansen, Hans Christian Hoeck (2015). Impact of source data verification on data quality in clinical trials: an empirical post hoc analysis of three phase 3 randomized clinical trials. British Journal of Clinical Pharmacology, 79(4), 660–668. DOI: 10.1111/bcp.12531.

Podobne wpisy

Jeden komentarz

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *