As a clinical trial statistician or programmer, challenge anything in this benchmark: describe a problem in Comments, or propose a fix with the Edit button on any source file.
- Task: Would a real study need this derivation, specified this way? Does it follow CDISC standards: variable names, controlled terms, record structure? Flag any rule that is ambiguous or that a sponsor would handle differently.
- Inputs: Do they look like data collected in a real trial, and do they include the situations you would expect to meet in one?
- Expected output: Would independent QC programming reproduce every value from these inputs and rules?
The other tabs beside Comments are background for assessment, not under review.
Summary
README.mdEach subject and reference day receives the measurement nearest that day.
BASE supplies the subject identifier ID and reference day REF;
SRC supplies candidate measurement days and their text values.
VALUE is the selected measurement, and DIST is the absolute difference
between its day and REF. For S1, reference day 10 selects b on day 11,
while reference day 3 selects a on day 2 from the same candidates.
For S2, days 9 and 11 are equally close to reference day 10; the first
record selects c. A candidate with no day is excluded. S4 has no
candidate, so both selected values are missing. The unmatched S3
candidate contributes no output row.
Inputs
Under review2 source filesExpected output
Under review4 expected rowsexpected/out.csv
Edit4 rows| ID | REF | VALUE | DIST |
|---|---|---|---|
| S1 | 10 | b | 1 |
| S1 | 3 | a | 1 |
| S2 | 10 | c | 1 |
| S4 | 10 | — | — |
Comments and assessment materials
| Variable Name | Variable Label | Type | Length | Controlled Terms or Format | Origin | Core | Conversion Definition | Variable Type | Variable Order | Comments for Define |
|---|---|---|---|---|---|---|---|---|---|---|
| ID | Subject Identifier | Char | Collected | Copy value from BASE.ID. | SDTM | 1 | ||||
| REF | Reference Day | Num | Collected | Copy value from BASE.REF. | SDTM | 2 | ||||
| VALUE | Closest Measurement | Char | Derived | Take VALUE from the first SRC record matching on ID, where SRC.DIST IS NOT NULL, ordered by SRC.DIST, and no match yields blank. | SDTM | 3 | ||||
| DIST | Distance from Reference Day | Num | Derived | Take DIST from the first SRC record matching on ID, where SRC.DIST IS NOT NULL, ordered by SRC.DIST, where DIST is derived as compute ABS(DAY - BASE.REF), and no match yields blank. | SDTM | 4 |
| Version | Date | Author | Description | Reviewer | Sign-off |
|---|---|---|---|---|---|
| 1.3 | 2026-09-29 | yamaa docs build | Show study codelist names, external dictionaries, and ISO 8601 formats in variable rows; list the document's codelist values and metadata | ||
| 1.2 | 2026-09-29 | yamaa docs build | Classify ADaM copies from a declared input as Predecessor and recodes as Derived, and SDTM recodes of locally derived columns as Derived | ||
| 1.1 | 2026-09-29 | yamaa docs build | Resolve lookups into the donor record they select, and give every derivation shape a plain-language rule instead of its raw YAML | ||
| 1.0 | yamaa docs build | Initial generation from spec.yaml |
yamaa
Comments
Signed in with GitHub; saved in repository Discussions