In der letzten Woche Post, Wir besprachen einige der kommenden Funktionen von JMP Clinical 4.1, die neue und geänderte Aufzeichnungen identifizieren, wenn klinische Versuchsdaten aktualisiert werden. Diese Tools können klinische Überprüfungen erheblich beschleunigen, sodass sich der Kliniker, Statistiker oder Datenmanager ausschließlich auf nicht geprüfte Datensätze konzentrieren kann. Hier diskutieren wir die Details, wie JMP Clinical dies ermöglicht.
Das Verständnis der folgenden Diskussion wird einen großen Beitrag dazu leisten, dass Ihre JMP Clinical Review-Erfahrung so effizient und angenehm wie möglich ist. Auch wenn die Präsentation ein wenig technisch erscheint, muss das für die Erstellung der SDTM- oder ADaM-Datensätze verantwortliche Team einen einzelnen Verarbeitungsschritt hinzufügen (falls dies nicht bereits der Fall ist). Ansonsten können sich die meisten von uns der zusätzlichen Schritte nicht bewusst sein.
Kurz gesagt, es geht um das Schlüssel .
Schlüssel geben uns normalerweise Zugriff auf etwas, egal ob es sich um eine verschlossene Box oder einen Raum handelt. Bei der Diskussion von Datensätzen geben Schlüssel Einblick in die Eindeutigkeit einer Datensatz- oder Datensatzreihe. Das CDISC SDTM Das Implementierungshandbuch definiert die folgenden Begriffe:
Natürlicher Schlüssel ist eine oder mehrere Variablen, deren Inhalt jeden Datensatz (Zeile) im Datensatz eindeutig unterscheidet. Beispielsweise sollte jede Zeile der DM-Domäne ein anderes Thema darstellen. Die natürlichen Schlüssel in diesem Fall könnten Study Identifier (STUDYID) und Unique Subject Identifier (USUBJID) sein. Ersatzschlüssel ist ein künstlich etablierter Bezeichner mit einer Variablen, der Zeilen eindeutig identifiziert. Dies kann alle xxSEQ-Variablen einschließen. Wenn der Datensatz für Vitalparameter beispielsweise 200 Datensätze enthält, könnte die VSSEQ-Variable von 1 bis 200 nummeriert werden, um die Zeilen eindeutig zu identifizieren.Alternativ kann xxSEQ Teil eines natürlichen Schlüssels sein, so dass xxSEQ von 1 bis n zählen kann ich , wo n ich ist die Gesamtzahl der Datensätze für ein Thema. Hier wären die Schlüssel STUDYID, USUBJID und xxSEQ.
Warum ist das so wichtig? Nun, um einen Datensatz (Zeile) auf Unterschiede zwischen zwei Momentaufnahmen zu untersuchen, muss es eine Möglichkeit geben, diese beiden Versionen des Datensatzes miteinander zu verknüpfen. Hier kommen die Schlüssel rein. Andernfalls kann JMP Clinical nicht feststellen, welche Datensätze zusammenpassen. Um Notizen für einen bestimmten Datensatz zu speichern oder darauf zuzugreifen, muss es eine Möglichkeit geben, die Notiz abzulegen, so dass später darauf zugegriffen werden kann, wenn zum Datensatz zurückgekehrt wird. Auch hier kommen die Schlüssel rein.
Wie kann ein Benutzer JMP Clinical die Schlüssel zu allen Datendomänen für eine Studie bereitstellen? Das ist eigentlich ziemlich unbedeutend. Wenn Sie PROC CONTENTS verwendet haben, enthält der Ausgabe-Header eines Datensatzes verschiedene Informationen zum Datensatz. Eine dieser Informationen ist "SORTED: YES / NO". Wenn der Datensatz zufällig sortiert wird (dh JA), werden nach der Beschreibung der Datensatzvariablen zusätzliche Informationen in der Ausgabe PROC CONTENTS bereitgestellt. Wenn ich beispielsweise PROC CONTENTS in der DM-Domäne für Nicardipine verwende, erhalte ich in der Ausgabe die folgende Zeile: "Sortedby STUDYID USUBJID". Diese Metadaten werden im SAS-formatierten Datensatz gespeichert. Die für die Datensatzsortierung verwendeten Variablen werden von JMP Clinical zur Definition der Schlüssel für eine Studie verwendet.
Wie können diese Werte in den Metadaten eines Datensatzes gespeichert werden? Versuchen Sie entweder:
PROC-SORT-Daten = DM out = out.DM;
von STUDYID USUBJID;
Lauf;
oder
data out.DM (sortiert nach = STUDYID USUBJID);
setze DM;
Lauf;
Wenn für die Studiendomänen keine SORTEDBY-Metadaten mit den Datensätzen verknüpft sind, versucht JMP Clinical, die Schlüssel anhand der im SDTM-Implementierungshandbuch enthaltenen Vorschläge abzuleiten. Die generierten Schlüssel sind jedoch möglicherweise nicht die optimale Gruppe für eine bestimmte Domäne.
Das passiert also, wenn die gelieferten Schlüssel die Datensätze (Zeilen) nicht eindeutig definieren? Wenn die Studie zum ersten Mal zu JMP Clinical hinzugefügt wird, wird für jede betroffene Domäne ein doppelter Bericht mit den Datensätzen (Zeilen) bereitgestellt, die nicht eindeutig bestimmt werden können. Diese Datensätze (Zeilen) werden in JMP Clinical weiterhin als Neu gekennzeichnet. Notizen auf Datensatzebene, die vom System oder vom Benutzer generiert werden, werden jedoch zwei oder mehr Datensätzen zugeordnet. Dies kann in Ordnung sein, wenn es wenige Duplikate gibt, mit denen man sich auseinandersetzen muss, aber alle Duplikate sollten auf mögliche Datenfehler überprüft werden (Daten, die versehentlich zweimal eingegeben wurden). Wenn die Studiendaten aktualisiert werden und Redundanzen bestehen, hat JMP Clinical keine Möglichkeit, diese Datensätze abzugleichen. Mit anderen Worten, es kann nicht beurteilen, ob Änderungen an den Aufzeichnungen vorgenommen wurden oder nicht. Wenn es nur wenige Duplikate gibt, können diese Datensätze (Zeilen) in mehreren Momentaufnahmen auf Korrektheit überprüft werden.
Einige andere wichtige Tipps:
(1) Wenn Sie zum ersten Mal eine Studie hinzufügen, prüfen Sie den doppelten Bericht. Identifizieren Sie die Schlüssel für jede Domäne und stellen Sie sicher, dass Duplikate auf ein Minimum beschränkt sind (idealerweise nicht vorhanden). Andernfalls ist die Überprüfungsfunktionalität nicht so nützlich, wie sie letztendlich sein könnte. Wenn beispielsweise die Domäne der Vitalfunktionen (VS) nur mit STUDYID und USUBJID unter Verwendung des PROC-SORT-Codes oben sortiert wurde, werden alle Datensätze für das Subjekt als Duplikate betrachtet. Dies umfasst mehrere Tests (z. B. Herzfrequenz, systolischer und diastolischer Blutdruck) oder Aufzeichnungen, die zu verschiedenen Besuchen gehören.
(2) Wenn Sie (1) durchführen und es für alle Domänen zahlreiche Duplikationen gibt, entfernen Sie die Studie aus JMP Clinical und fügen Sie sie erneut hinzu, wenn auf die Datensätze weitere entsprechend definierte Schlüssel angewendet wurden. Es ist wichtig, diesen Schritt korrekt auszuführen, bevor die Studie mit neuen Momentaufnahmen aktualisiert oder Notizen auf Datensatzebene generiert werden.
(3) Versuchen Sie, die kleinstmögliche Anzahl von Variablen auszuwählen, um die Schlüssel zu definieren, und wählen Sie Variablen aus, bei denen die Werte wahrscheinlich nicht geändert werden. Wenn für einen Datensatz eine der Variablen, aus denen die Schlüssel bestehen, geändert wurde, besteht keine Möglichkeit, den Datensatz mit früheren Versionen des Datensatzes abzugleichen. Da jedoch alle Datensätze eine eindeutige Betreffsbezeichnung (USUBJID) haben, können alle Notizen auf Betreffebene angezeigt werden. Empfehlungen finden Sie im CDISC-Implementierungshandbuch.
(4) Angesichts (3) würde ich keine Begriffe verwenden, die auf medizinische Kodierung als Teil der Schlüssel angewiesen sind (dh AEDECOD basierend auf MedDRA oder CMDECOD basierend auf WHODRUG). Dafür gibt es zwei Gründe. Erstens ist die medizinische Kodierung möglicherweise nicht sofort verfügbar. Dies bietet die Möglichkeit, dass ein fehlender AEDECOD-Wert später in einen nicht fehlenden codierten Begriff geändert wird. Darüber hinaus können sich kodierte Begriffe manchmal im Verlauf einer Studie aufgrund neuer Erkenntnisse des klinischen Teams ändern. Ich würde wörtliche Ausdrücke wie AETERM oder CMTRT empfehlen.
(5) Die xxSEQ-Variable oder der Satz STUDYID, USUBJID und xxSEQ sind möglicherweise geeignete Schlüssel, da sich diese Werte wahrscheinlich nicht ändern. Die xxSEQ-Variable muss jedoch sorgfältig gepflegt werden, damit sich die Anzahl für einen bestimmten Datensatz nicht ändert. Angenommen, ein CM-Datensatz enthält zwei Datensätze:
CMSEQ CMTRT CMSTDTC
1 ASPIRIN 20.03.1974
2 IBUPROFEN 27.03.1974
und wird durch Abfrage mit einem neuen med aktualisiert, das tatsächlich basierend auf dem Datum zwischen den ersten beiden liegt:
CMSEQ CMTRT CMSTDTC
1 ASPIRIN 20.03.1974
2 IBUPROFEN 27.03.1974
3 Vitamin C 03-24-1974
Es ist wichtig, dass alle neuen Datensätze am Ende angepackt werden (und die Sequenz von CMSEQ fortgesetzt wird). Alternativ, wenn ein Datensatz gelöscht wird:
CMSEQ CMTRT CMSTDTC
2 IBUPROFEN 27.03.1974
3 Vitamin C 03-24-1974
Die Sequenznummer muss konsistent bleiben (dh 1 kann nie mehr verwendet werden). Wenn Ihr Unternehmen dazu neigt, xxSEQ als direkte Zahl von 1 bis N für alle Datensätze oder 1 bis n zu definieren ich Für jedes Thema ohne Rücksicht auf das, was die Zeile ist, ist die Verwendung von xxSEQ als Schlüssel keine gute Wahl.
(6) Alternativ kann eine einzelne Nicht-CDISC-Variable in jede Domäne aufgenommen und den SORTEDBY-Metadaten hinzugefügt werden. Eine gute Wahl kann eine Datensatzkennungsvariable umfassen, die von einem beliebigen Datenverwaltungssystem ausgegeben wird.
Nächste Woche untersuchen wir ein Beispiel im Detail.