recupereren van de ruwe gegevens achter een niet-parametrische survivalcurve
principes
om te beginnen zullen we ervan uitgaan dat de waarden van de Kaplan-Meier-of Nelson-Aalen-curve met voldoende nauwkeurigheid en precisie kunnen worden gemeten (we zullen deze eis in latere secties versoepelen). In dergelijke gevallen kunnen de eerste beginselen – en enkele inhoudingen – over het algemeen niet alleen (i) de afzonderlijke “event” – tijd t die elke risicoset definieert, maar ook voor elke risicoset (ii) het aantal risico ’s n en (iii) het aantal gebeurtenissen d. vervolgens kan men, door opeenvolgende Aftrekken, berekenen (iv) het aantal waarnemingen gecensureerd tussen opeenvolgende risicosets c. tenzij de exacte tijden van gecensureerde waarnemingen worden aangegeven op de grafiek, kunnen de herstelde gegevens worden gecomprimeerd in de volgorde
als de exacte censuurtijden op de grafiek worden aangegeven, dan kan in principe de gehele dataset worden gereconstrueerd; anders is het beste dat men kan doen interpolatie te gebruiken, samen met de beschrijving van de wervingsperiode en sluitingsdata van de studie, om de locaties van de gecensureerde waarnemingen binnen de verschillende tijdsintervallen toe te rekenen. De meeste auteurs hebben ze gelijkmatig verdeeld binnen deze intervallen.
om de principes te herzien en de redenering te illustreren, beginnen we met een klein voorbeeld, met behulp van een veelgebruikte illustratieve dataset. Figuur 1a toont de Kaplan-Meier schatting van de overlevingsfunctie voor patiënten met acute myelogene leukemie (AML) in de ‘onderhield’ groep, beschikbaar in het overlevingspakket in R. de vraag op dat moment was of de standaardkuur chemotherapie moest worden gehandhaafd voor extra cycli voor deze patiënten. Om te beginnen vragen we de lezer om de extra informatie die we op elk paneel laten zien te negeren en hun aandacht te beperken tot de curve, met zijn stappen en censuurmarkeringen.
Let S(t j ) geeft de overlevingskans aan, of de ‘hoogte’ van de overlevingscurve, op tijdstip t j en definieer de ‘sprong’ J(t j ) als S(tj−1)−S(T j ). We zouden het meestal weten, maar stel dat we n0 niet eens kennen, het aantal proefpersonen op tijdstip t0=0. Zonder enige andere informatie behalve de waarden van de stapfunctie en de tijden van de stappen, hoeveel van de ruwe informatie kan men van een dergelijke grafiek herstellen, als de S ‘ S met voldoende nauwkeurigheid bekend zijn? (Met voldoende nauwkeurigheid bedoelen we dat de werkelijke waarde betrouwbaar kan worden afgeleid om n j te zijn en niet n j -1 of n j +1).
een snelle inspectie van figuur 1a laat zien dat er zeven sprongen en drie censuurmarkeringen zijn, dus n0 is minstens 10. Zelfs zonder markeringen te censureren, geven de verschillen in de grootte van de sprongen enige censurering aan – als er geen waren, zouden alle sprongen ofwel van gelijke grootte (1/n0) zijn, of veelvouden hiervan, dat wil zeggen, m/N0 als m>1 Gebeurtenissen in een risicoset. Zoals weergegeven in Figuur 1b, J(t3)>J(t2), terwijl J(t5)>J(t4), en J(t7)>J(t6); bovendien, aangezien de laatste waarneming wordt gecensureerd, kunnen we concluderen dat er ten minste vier gecensureerde waarden in totaal.
een manier om te begrijpen waarom sprongen van een enkele gebeurtenis verder naar rechts alleen groter kunnen zijn dan de sprongen die eraan vooraf gaan, is via Efron ‘ s algoritme voor herdistributie naar rechts : in eerste instantie wordt bij elke observatietijd een waarschijnlijkheidsmassa van 1/n0 geplaatst. Als een gecensureerde tijd van links naar rechts wordt aangetroffen, wordt de massa ervan in gelijke delen verdeeld over alle observaties aan de rechterkant. Deze procedure van het wegvagen van de gecensureerde waarnemingen wordt herhaald totdat al hun geassocieerde massa ‘ s zijn herverdeeld.
in Figuur 1b zijn de eerste twee sprongen J(t1) en J(t2) even groot als 0,09091, of 1/11, wat erop wijst dat er aanvankelijk 11 personen in gevaar waren (natuurlijk, zonder verdere informatie, konden het ook 22 of 33 zijn geweest, maar latere waarden van de curve zullen deze effectief uitsluiten). Het feit dat de derde sprong groter is, stelt dat er een gecensureerde waarneming moet zijn op of na t2 en voor T3. Maar omdat(in tegenstelling tot de andere gecensureerde observaties die strikt tussen gebeurtenissen vallen) het niet wordt aangeduid met een vinkje op de grafiek, moet de censuur, volgens afspraak, hebben plaatsgevonden onmiddellijk na de gebeurtenis (en) op t2, maar vanwege de discreteheid van de gegevens, zijn vastgelegd als een ‘ t2+’. Dus, terwijl het censureren van markeringen meer precieze locaties van de gecensureerde observaties kan geven, statistische pakketten niet noodzakelijkerwijs alle van hen weer te geven, en dus moet men niet vertrouwen op het identificeren van alle van hen alleen van de Vink merken.
volgens Efron ’s algoritme kan J(t3) met grootte 0,10227 worden gezien als de som van de oorspronkelijke massa van 1/11 (0,09091)en (1/8) th van dezelfde massa geassocieerd met de gecensureerde “T2+” – waarneming die werd herverdeeld onder de acht die direct na t2 risico liepen, d.w.z. J(t3)=J(t2)+1/8×J(t2). Echter, de rekenkunde en de meerdere mogelijke ‘legaten’ en configuraties worden ingewikkeld, als er meerdere gebeurtenissen op hetzelfde waargenomen tijdstip, of als meer dan een waarneming in een interval wordt gecensureerd. Hoe kunnen we, nu de uitdrukkingen voor absolute groottes van de sprongen ingewikkeld beginnen te worden, anders het aantal risico ‘ s – en het aantal gebeurtenissen – bepalen op het moment van elke opeenvolgende sprong?
We vonden het het gemakkelijkst om eerst aan te nemen dat elke d j =1, dan de corresponderende N j afleiden , dan eventuele anomalieën in het patroon van opeenvolgende n J s gebruiken om d j te herzien tot een groter geheel getal, en de overeenkomstige N j dienovereenkomstig te schalen. Een manier om van d J naar n j te gaan is om de ‘product of conditional survival probabilities’-structuur van de K − M-schatter te exploiteren: de opeenvolging van producten die als schatter worden gebruikt omkeren en de Ŝ t j delen Door Ŝ T j-1 . De resulterende ratio is 1-d(t j )/n(t j ), waarbij d(t j ) het aantal gebeurtenissen op tijdstip t j aangeeft en n (t j ) het aantal risico ‘ s op tijdstip t j is . Als we kunnen vaststellen wat d (t j ) is, dan krijgen we de eenvoudige uitdrukking voor n j:
inderdaad, zoals weergegeven in Figuur 1c, kunnen we met deze uitdrukking concluderen dat de getallen die bij {t1,…,t7} in gevaar zijn {n1,…,n7}={11,10,8,7,5,4,2}.
De begingetallen – die gewoonlijk in publicaties worden gerapporteerd – en de volgorde van “aangepaste” of “afgeleide” risiconummers kunnen worden gebruikt om met virtuele zekerheid het aantal gebeurtenissen op elk afzonderlijk gebeurtenistijd vast te stellen – de d J s. Als er inderdaad één gebeurtenis op elk afzonderlijk gebeurtenistijd is, dan zullen de afgeleide risiconummers – afgezien van de (meestal kleine) meetfouten-een monotonisch afnemende volgorde vormen. Systematische afwijkingen van eentonigheid zijn onmiddellijk duidelijk: als er in feite twee gebeurtenissen op een verschillende gebeurtenis tijd, het’ aangepaste ‘ nummer in gevaar , n j, zal zijn 1/2 van wat het zou moeten zijn, en zal duidelijk onderscheiden van zijn singleton-gebaseerde buren; als er drie gebeurtenissen, het ‘aangepaste’ nummer in gevaar zal zijn 1/3 van zijn buren, enzovoort. We zullen dit later illustreren bij het bespreken van het voorbeeld in Figuur 2 (rechts). Uit de aldus vastgestelde {s1,…,s7} en de {n1,…, n7} kunnen we dan door aftrekking afleiden dat in ons voorbeeld {c1,…, c7}={0,1,0,1,0,1,1}.
als de tijdsafstanden tussen de aangrenzende t ‘ s relatief kort zijn, of als de aantallen risico lopen op specifieke tijdstippen (bijv. jaarlijks of maandelijks) worden aangegeven op de grafiek, dan door verdere interpolatie van de opeenvolging van nummers in gevaar, de totale hoeveelheden persoon tijd voor elk tijdsinterval van belang kan worden vastgesteld met minimale fout. Survival plots hebben meestal een breedte:hoogte-breedteverhouding groter dan 1. De relatieve fouten zullen dus kleiner zijn op de’ tijd ‘dan op de’ persoon ‘ -dimensie van de persoon-tijd-noemer-inputs voor de berekende gebeurtenissnelheden.
bovenstaande formule verwijst naar de Kaplan-Meier-curve. Als in plaats van de overlevingscurve de Nelson-Aalen-schatter van de cumulatieve hazard rate-functie toont, gegeven door H t j = ∑ t i ≤ t j d t i / n t i , dan is de uitdrukking voor n(t j)
het is niet altijd duidelijk uit het label de verticale as of een toenemende “Nelson-Aalen” − curve verwijst naar deze sequentie van H s, d.w.z. geïntegreerde gevaren, of naar de cumulatieve incidentie of risico, d.w.z. CI j =R j =1-exp. Als het inderdaad het laatste is, d.w.z. het complement van S, dan wordt de formule voor n j
tot nu toe hebben we aangenomen dat de verticale en horizontale coördinaten van de hoekpunten met ‘voldoende’ nauwkeurigheid kunnen worden gemeten. We gaan nu naar wat kan worden bereikt met behulp van de werkelijke K-M en N-A curves die kunnen worden geëxtraheerd uit bitmap afbeeldingen en vector-gebaseerde afbeeldingen in publicaties.
praktische aspecten
slechts een decennium of twee geleden was het nog steeds gebruikelijk, maar tijdrovend, om de “pencil and ruler” -benadering te gebruiken om overlevingskansen uit een (mogelijk vergrote) hardcopy-grafiek af te lezen. Deze praktijk kan gepaard gaan met een aanzienlijke meetfout, vooral wanneer de afdruk klein was of de resolutie slecht was. Vandaag de dag, omdat de meeste grafieken elektronisch kunnen worden benaderd of omgezet in een dergelijk formaat, kan het arbeidsintensieve werk worden verminderd, met verbeterde precisie en nauwkeurigheid. Op onze website http://www.med.mcgill.ca/epidemiology/hanley/software/DataRecovery hebben we een aantal grafieken verzameld die gevonden zijn in elektronisch gepubliceerde artikelen. Deze afbeeldingen zijn typisch van twee types, wat de Adobe Acrobat documentatie verwijst naar ‘rasterafbeeldingen ‘ en’vectorobjecten’.
Rasterafbeeldingen
een rasterafbeelding, of bitmap, bestaat uit pixels (de kleinste adresseerbare schermelementen in een weergaveapparaat) gerangschikt in een tweedimensionaal raster. Elke pixel, vertegenwoordigd door een punt of vierkant, heeft zijn eigen coördinaten en kleur. Wanneer men meer en meer inzoomt, wordt het beeld korreliger en worden de individuele punten die de lijnen en symbolen op de grafiek vormen duidelijker.
in een zwart-wit-of grijswaardenafbeelding wordt wit meestal weergegeven door de waarde 1, zwart door een 0, en grijs door een tussenwaarde; kleurenafbeeldingen maken gebruik van een uitgebreider coderingsschema met meerdere kanalen, zoals RGB of CMYK. Net als in de digitale fotografie, hoe groter het aantal pixels, hoe trouwer de weergave van de oorspronkelijke waarden. Voor een voorbeeld van prostaatkankeronderzoek (een onderwerp dat hieronder verder wordt besproken), zie de figuren twee en drie in het artikel van Andriole .
Rasterafbeeldingen kunnen worden opgeslagen in een aantal bestandsformaten; de meest voorkomende zijn.jpeg,.png,.tiff, en.gif. Ze kunnen op een aantal manieren worden gegenereerd, zoals (i) het scannen van de hardcopy en het opslaan als een rasterafbeelding, (ii) (als het zich in een pagina van een elektronisch document bevindt) inzoomen op het gebied dat de grafiek bevat en een screenshot maken, of (iii) (als het al is ingesloten in een PDF-bestand) met behulp van de functie ‘afbeeldingen exporteren’ in Adobe Acrobat.
de gewenste punten op de grafiek kunnen op twee manieren uit het afbeeldingsbestand worden geëxtraheerd. De meer technische manier is om een programmeertaal zoals Basic, C++ of SAS te gebruiken om de kleurwaarden in een 2-D array te lezen, aan de hand van de kleuren van de punten de pixellocaties van belangrijke oriëntatiepunten te identificeren (zoals de assen die elkaar kruisen en de verste verticale en horizontale vinkmarkeringen), en tenslotte te bepalen welke reeksen van pixellocaties de punten bevatten die deel uitmaken van de curves van belang. Terwijl het readimages pakket het gemakkelijk maakt om de array in R te lezen, is het programmeren om de array te verwerken nog steeds een aanzienlijke uitdaging, vooral voor de delen waar curves elkaar overlappen.
De eenvoudigste manier is het gebruik van een grafische digitizer, een computerprogramma dat (i) de geselecteerde afbeelding op het scherm importeert en weergeeft en (ii) de gebruiker in staat stelt om horizontale en verticale oriëntatiepunten met de cursor te identificeren en op zoveel locaties in de grafiek te klikken als gewenst, vervolgens de bijbehorende (x,y) waarden converteert en opslaat. Een aantal grafische digitizers (zoals GraphClick, Engauge Digitizer en Plot Digitizer) zijn gratis beschikbaar op het web. Guyot et al. rapporteer dat de software DigitizeIt (http://www.digitizeit.de/) goed presteerde. Omdat digitalisaties van rasterafbeeldingen in detail zijn behandeld door Guyot et al. , we zullen geen voorbeelden geven, maar alleen hun nauwkeurigheid contrasteren met die van vectorbeelden in de theoretische foutanalyse hieronder.
vectorafbeeldingen
een vectorgebaseerd figuur of grafiek bestaat uit geometrische primitieven of elementen zoals punten en lijnen; het kan worden geïdentificeerd door het feit dat het voor onbepaalde tijd kan worden vergroot zonder kwaliteitsverlies. Twee eindpunten van een lijn worden vertegenwoordigd door twee (x,y) paren en een punt door een lijn van nul lengte. De ‘Post’ in PostScript – de meest gebruikte taal om ze te produceren – verwijst naar het principe van apparaatonafhankelijkheid: de elementen worden in real time weergegeven uit de opgeslagen coördinaten van de elementen, ongeacht de lokale hardware waarop de software wordt gebruikt. Dit principe van portabiliteit ligt ten grondslag aan het portable document format (PDF), ontwikkeld door Adobe; PDF-bestanden zijn gebaseerd op de PostScript-taal.
de inhoud van een PDF-document wordt meestal opgeslagen als een binair bestand, maar zowel de Adobe Acrobat Pro-toepassing, als de Preview-toepassing in Mac OS, kunnen een PDF-document (of de pagina die de grafiek van belang bevat) exporteren als een PostScript-bestand, dat de commando ‘ s bevat. Dergelijke bestanden hebben de neiging om groot te zijn en bevatten veel technische informatie, maar het is gemakkelijk (als vervelend) om de commando ‘ s die de assen, vink merken, en de volgorde van lijnsegmenten of punten die deel uitmaken van de K-M en N-A curves te identificeren.
in PostScript worden locaties op een pagina gemeten in printerpunten (72 punten per inch) vanuit de linkerbovenhoek van de pagina. Dus, een 2 inch (144 punt) x-as, die zich uitstrekt van t = 0 en t = 5, en fysiek van 1 tot 3 in vanaf de linkerkant van de pagina en gelegen 5 in (360 punten) onder de bovenkant van de pagina zou worden gespecificeerd door het lijnsegment (72, 360) ⇔ (216, 360). Stel dat de uiteinden van de 1.5-in (108 punten) hoge y-as overeenkomen met respectievelijk S=0 en s=1. Dan, uit deze PostScript coördinaten, kunnen we bepalen dat het lijnsegment (144, 300) ⇔ (146.88, 300) is een horizontaal deel van de stapfunctie waarbij de waarde S = (360-300) / 108 = 0,55 in het interval t=(144-72)/(144/5)=2.5 tot t=(146.88−72)/(144/5)=2.6 en dat het segment (146.88, 300) ⇔ (146.88, 303) is een verticale sprong bij t = 2,6, van lengte Δ S = 3/108 = 0,028 van s = 0,555 tot S = 0,583.
verrassend genoeg bevatten sommige publicaties een mix van formaten. Inderdaad, in de publicatie gebruikt als de bron van figuur een van , de assen in de oorspronkelijke New England Journal of Medicine (NEJM) figuur waren weergegeven als vectoren in PostScript, maar de twee krommen zijn gesuperponeerd als een beeld. De samenstelling werd geanalyseerd als een afbeelding door Guyot et al. . Daarentegen werd de andere figuur in die NEJM-publicatie volledig weergegeven in PostScript, zij het met een aantal zeer complexe paden om de lijnsegmenten te vormen.
precisie
hoe precies worden de gegevens geëxtraheerd uit raster-en vectorafbeeldingen? Men kan deze vraag beoordelen op een aantal niveaus, te beginnen met de precisie van de measurements(of 1−Ŝ) metingen zelf. Denk aan een typische 300 dots per inch (dpi) raster afbeelding waarin de volledige (0, 1) S-as is 1,6 in, of 480 pixels, hoog. Dit geeft een resolutie van Δ s≈0,002. (Een’ neerwaartse ‘ kromme die eindigt op zeg S = 0,9, maar op een plot die de volledige (0,1) schaal gebruikt, verspilt aanzienlijke precisie: het is logischer om de ‘opwaartse’ functie, 1−S, tot 0,1 te plotten, waardoor de 1-S waarden accuraat zijn tot op ±0,0005).
beschouw in plaats daarvan een vectorafbeelding met dezelfde kromme, op dezelfde verticale schaal van 1,6-in (=72×1,6=115,2 punten). Omdat de coördinaten gegeven in het PostScript – bestand dat door Adobe Acrobat wordt geëxporteerd tot op drie decimalen worden geregistreerd, is de resolutie Δ S=1/(115.2×1,000)≈0.00001, of 200 keer die van de rasterafbeelding.
hoewel beide resoluties voldoende nauwkeurige metingen van Ŝ geven, en één in staat stellen om te bepalen hoeveel gebeurtenissen bij elke sprong betrokken zijn, geven ze niet zulke nauwkeurige metingen van het aantal risico ‘ s bij elke sprong, omdat het wordt gemeten als de reciproke van 1−Ŝ t j /Ŝ t j − 1 . Als empirische beoordeling van de precisie van de afgeleide metingen toont figuur 2 de geschatte aantallen van een rasterbeeld en een vectorbeeld, samen met – als validiteitscontrole – de gerapporteerde aantallen die aan het einde van elk tijdsinterval risico lopen. Ze komen zeer goed overeen met die in de artikelen.
de nauwkeurigheid kan ook worden gekwantificeerd met behulp van een theoretische foutanalyse. Beschouw twee aangrenzende waarden op dezelfde cumulatieve incidentiecurve, waarbij de verticale as van 0% naar 5% gaat, gerapporteerd (na enige afronding) respectievelijk y0 en y5 punten boven een mijlpaal; stel dat zonder afronding, ze Y0 en Y5 punten boven zouden zijn. Geef de verticale locaties (vergelijkbaar afgerond) van de twee aangrenzende punten op de grafiek aan als y’ en y”, met y”>y’, overeenkomend met niet-afgeronde waarden van Y’ en Y”. De schatting van het aantal risico ’s is als volgt:
in de bijlage geven we de variantie van deze afgeleide hoeveelheid, ervan uitgaande dat de fouten (e s) in de vier y s gelijk en onafhankelijk van elkaar zijn. In de praktijk worden de PostScript-punten afgerond op drie decimalen; DUS ligt de werkelijke locatie Y geassocieerd met een gerapporteerde locatie van y=563,384 punten tussen 563,3835 en 563,3845 punten. Als fouten uniform zijn over dit 0,001 bereik, zodat σ E ≈0,001 / 12 = 0.0003 punten, dan is de variatiecoëfficiënt (CV)