Veröffentlicht am :
ETL CREATION_INTERNE

Erstellung von Metadaten für Laborvariablen

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Das Skript initialisiert einen Pfad über eine Makrovariable und weist diesem dann eine SAS©-Bibliothek zu. Anschließend wird ein DATA-Schritt mit 'datalines' verwendet, um die Metadaten verschiedener Laborvariablen (Studien-ID, Domäne, eindeutige Subjekt-ID usw.) manuell zu definieren. Für jede Variable werden der Typ (Zeichen oder numerisch), die Länge und die Beschriftung bestimmt und diese Informationen in einer formatierten Zeichenkette 'attr' zusammengefügt, die zur dynamischen Generierung von Variablenattributen (z. B. für ATTRIB-Deklarationen) dienen könnte.
Datenanalyse

Type : CREATION_INTERNE


Die Daten werden direkt im SAS-Skript über die `datalines`-Klausel erstellt. Sie definieren die Metadaten von Laborvariablen (Name, Typ, Länge, Beschriftung).

1 Codeblock
Macro/Libname
Erklärung :
Dieser Block definiert eine Makrovariable `path` mit einem Verzeichnispfad. Anschließend wird eine SAS-Bibliothek namens `meta` diesem Pfad zugewiesen. Diese Bibliothek wird verwendet, um den später erstellten Metadaten-Datensatz zu speichern.
Kopiert!
1%let path = H:\GraphicsGroup\dummy\sdtm-style\meta;
2LIBNAME meta "&path";
3 
2 Codeblock
DATA STEP Data
Erklärung :
Dieser DATA-Schritt erstellt den Datensatz `lb_meta` in der Bibliothek `meta`. Er liest integrierte Rohdaten (Datalines) für die Spalten `name`, `type`, `length` und `label`. Das Skript berechnet dann eine neue Variable `attr`, die diese Informationen in einer SAS-Attributzeichenkette formatiert, einschließlich des Variablennamens, seiner Beschriftung, seines Typs (falls Zeichen) und seiner Länge. Dies ermöglicht die dynamische Generierung von Variablenattributen für die spätere Verwendung in anderen SAS-Schritten.
Kopiert!
1DATA meta.lb_meta;
2 INPUT name $ 1-8 type $ 10-13 LENGTH $ 16-18 label $ 22-61;
3 LENGTH attr $100;
4 attr = trim(name) || " label='" || trim(label) || "' length=";
5 IF type = "char" THEN
6 attr = trim(attr) || "$";
7 attr = trim(attr) || trim(LENGTH);
8*--------1---------2---------3---------4---------5---------6-;
9DATALINES;
10STUDYID char 25 Study Identifier
11DOMAIN char 2 Domain Abbreviation
12USUBJID char 25 Unique Subject Identifier
13LBSEQ num 8 Sequence Number
14LBGRPID char 25 Group ID
15LBREFID char 25 Specimen ID
16LBSPID char 25 Sponsor-Defined Identifier
17LBTESTCD char 8 Lab Test or Examination Short Name
18LBTEST char 50 Lab Test or Examination Name
19LBCAT char 50 Category for Lab Test
20LBSCAT char 50 Subcategory for Lab Test
21LBORRES char 25 RESULT or Finding in Original Units
22LBORRESU char 25 Original Units
23LBORNRLO char 25 Reference Range Lower Limit in Orig Unit
24LBORNRHI char 25 Reference Range Upper Limit in Orig Unit
25LBSTRESC char 25 Character RESULT/Finding in Std FORMAT
26LBSTRESN num 8 Numeric RESULT/Finding in Standard Units
27LBSTRESU char 25 Standard Units
28LBSTNRLO num 8 Reference Range Lower Limit-Std Units
29LBSTNRHI num 8 Reference Range Upper Limit-Std Units
30LBSTNRC char 25 Reference Range for Char Rslt-Std Units
31LBNRIND char 25 Reference Range Indicator
32LBSTAT char 25 Completion STATUS
33LBREASND char 200 Reason Test Not Done
34LBNAM char 200 Vendor Name
35LBLOINC char 50 LOINC Code
36LBSPEC char 50 Specimen Type
37LBSPCCND char 50 Specimen Condition
38LBMETHOD char 50 Method of Test or Examination
39LBBLFL char 1 Baseline Flag
40LBFAST char 1 Fasting STATUS
41LBDRVFL char 1 Derived Flag
42LBTOX char 25 Toxicity
43LBTOXGR char 25 Standard Toxicity Grade
44VISITNUM num 8 Visit Number
45VISIT char 100 Visit Name
46VISITDY num 8 Planned Study Day of Visit
47LBDTC char 19 Date/Time of Measurement
48LBENDTC char 19 END Date/Time of Specimen Collection
49LBDY num 8 Study Day of Specimen Collection
50LBTPT char 25 Planned Time Point Name
51LBTPTNUM num 8 Planned Time Point Number
52LBELTM char 19 Planned Elapsed Time from Time Point Ref
53LBTPTREF char 25 Time Point Reference
54LBRFTDTC char 19 Date/Time of Reference Time Point
55;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.