This example shows a selection of programming code document references specified in the documentRef attribute of the codeTemplate for 1 analysis method, and the programmingCode for 1 analysis and 2 outputsthe definition and results for a single analysis, "Summary of Subjects by Treatment and Sex", including the definitions of the grouping factors and method referenced by the analysis:
Xfancy |
---|
|
Lines 21-731: | Show the code template specified for the "Analysis of variance group comparison for a continuous variable" analysis method, which indicates that relevant R version 4.2.3 program statements can be found in the reference document identified as "anova_R". As there is no page reference, this indicates that the whole reference document contains relevant program statements. | Lines 11-25: | Show the programming code specification for the "Comparison of Age Group by Treatment" analysis, which indicates that relevant SAS version 9.4 program statements can be found in the reference document identified as "PROGRAM_CATALOG_SAS" which, in this example, is a single file containing a combined set of programs, with a bookmark created for each program. The sponsor chose to create two separate page references in order to provide a descriptive label for each. | Lines 29-34: | Show the programming code specification for the "Summary of TEAE by System Organ Class and Preferred Term" output, which indicates that relevant SAS version 9.4 program statements can be found in the reference document identified as "at14-5-01_sas". As there is no page reference, this indicates that the whole reference document contains relevant program statements. | definitions of the 2 grouping factors referenced by the analysis, both of which are not data-driven (dataDriven = false, shown on lines 3 and 17): - Lines 2-18: Show the definition of the "Treatment" grouping factor, which has 3 groups: "Placebo", "Xanomeline Low Dose", and "Xanomeline High Dose".
- Lines 19-31: Show the definition of the "Sex" grouping factor, which has 2 groups: "Male" and "Female".
| Lines 32-44: | Show the definition of the method referenced by the analysis, "Summary by group of a categorical variable", which has 2 operations: - Lines 36-39: Show the definition of the "Count of subjects" operation.
- Lines 40-44: Show the definition of the "Percent of subjects" operation.
| Lines 46-58: | Show the definition of the analysis: - Lines 49-50: Show that this is an analysis of the USUBJID variable in the ADSL dataset.
- Line 51: Shows the reference to the "Summary by group of a categorical variable" method.
- Lines 52-58: Show the references to the 2 grouping factors, both of which are marked as producing a result for each group in the grouping factor (resultsByGroup = true, shown on lines 54 and 57).
| Lines 59-155 | Show the list of results for the analysis. Each entry in the list (the start of which is indicated by a leading hyphen) represents an instance of the OperationResult class and contains: - The identifier value of the statistical operation performed in the operationId attribute.
- In the resultGroups attribute, a reference to both grouping factor groups associated with the result (indicated by the values of the groupingId and groupId attributes)
- The raw result value in the rawValue attribute, and
- In the formattedValue attribute, the result value formatted according to the pattern specified in the resultPattern attribute of the operation referenced by the operationId value. The specified patterns are shown on rows 39 and 43.
|
|
Code Block |
---|
title | YAML Example |
---|
linenumbers | true |
---|
|
analysisGroupings:
- id: AnlsGrouping_01_Trt
dataDriven: false
label: Treatment
groupingVariable: TRT01A
groups:
- id: AnlsGrouping_01_Trt_1
label: Placebo
order: 1
...
- id: AnlsGrouping_01_Trt_2
label: Xanomeline Low Dose
order: 2
...
- id: AnlsGrouping_01_Trt_3
label: Xanomeline High Dose
order: 3
...
- id: AnlsGrouping_02_Sex
dataDriven: false
label: Sex
groupingVariable: SEX
groups:
- id: AnlsGrouping_02_Sex_1
label: Male
order: 1
...
- id: AnlsGrouping_02_Sex_2
label: Female
order: 2
...
|
Code Block |
---|
title | YAML Example |
---|
linenumbers | true |
---|
|
methods:
- id: Mth01_CatVar_Summ_ByGrp
name: Summary by group of a categorical variable
operations:
- id: Mth01_CatVar_Summ_ByGrp_1_n
name: Count of subjects
label: n
resultPattern: XXX
- id: Mth01_CatVar_Summ_ByGrp_2_pct
name: Percent of subjects
label: '%'
resultPattern: ( XX.X)
...
...
analyses:
- id: An03_03_Sex_Summ_ByTrt
name: Summary of Subjects by Treatment and Sex
version: 1
dataset: ADSL
variable: USUBJID
methodId: Mth01_CatVar_Summ_ByGrp
analysisSetId: AnalysisSet_02_SAF
orderedGroupings:
- order: 1
resultsByGroup: true
groupingId: AnlsGrouping_01_Trt
- order: 2
resultsByGroup: true
groupingId: AnlsGrouping_02_Sex
results:
- operationId: Mth01_CatVar_Summ_ByGrp_1_n
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_1
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_1
rawValue: '33'
formattedValue: '33'
- operationId: Mth01_CatVar_Summ_ByGrp_1_n
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_1
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_2
rawValue: '53'
formattedValue: '53'
- operationId: Mth01_CatVar_Summ_ByGrp_1_n
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_2
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_1
rawValue: '34'
formattedValue: '34'
- operationId: Mth01_CatVar_Summ_ByGrp_1_n
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_2
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_2
rawValue: '50'
formattedValue: '50'
- operationId: Mth01_CatVar_Summ_ByGrp_1_n
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_3
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_1
rawValue: '44'
formattedValue: '44'
- operationId: Mth01_CatVar_Summ_ByGrp_1_n
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_3
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_2
rawValue: '40'
formattedValue: '40'
- operationId: Mth01_CatVar_Summ_ByGrp_2_pct
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_1
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_1
rawValue: '38.372093023255815'
formattedValue: ( 38.4)
- operationId: Mth01_CatVar_Summ_ByGrp_2_pct
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_1
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_2
rawValue: '61.627906976744185'
formattedValue: ( 61.6)
- operationId: Mth01_CatVar_Summ_ByGrp_2_pct
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_2
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_1
rawValue: '40.476190476190474'
formattedValue: ( 40.5)
- operationId: Mth01_CatVar_Summ_ByGrp_2_pct
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_2
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_2
rawValue: '59.523809523809526'
formattedValue: ( 59.5)
- operationId: Mth01_CatVar_Summ_ByGrp_2_pct
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_3
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_1
rawValue: '52.38095238095238'
formattedValue: ( 52.4)
- operationId: Mth01_CatVar_Summ_ByGrp_2_pct
resultGroups:
- groupingId: AnlsGrouping_01_Trt
groupId: AnlsGrouping_01_Trt_3
- groupingId: AnlsGrouping_02_Sex
groupId: AnlsGrouping_02_Sex_2
rawValue: '47.61904761904762'
formattedValue: ( 47.6)
...
... |
The results for this analysis could be represented in tabular format as shown in the following table, where the groupingId and groupId values from the 2 two instances of the ResultGroup class found in the resultGroups attribute for each each result are represented in separate pairs of columns ("resultGroup1_groupingId"/"resultGroup1_groupId" and "resultGroup2_groupingId"/"resultGroup2_groupId") so that each result is represented on a single row:
Dataset2 |
---|
operationId | resultGroup1_groupingId | resultGroup1_groupId | resultGroup2_groupingId | resultGroup2_groupId | rawValue | formattedValue |
---|
Mth01_CatVar_Summ_ByGrp_1_n | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_1 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_1 | 33 | 33 | Mth01_CatVar_Summ_ByGrp_1_n | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_1 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_2 | 53 | 53 | Mth01_CatVar_Summ_ByGrp_1_n | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_2 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_1 | 34 | 34 | Mth01_CatVar_Summ_ByGrp_1_n | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_2 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_2 | 50 | 50 | Mth01_CatVar_Summ_ByGrp_1_n | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_3 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_1 | 44 | 44 | Mth01_CatVar_Summ_ByGrp_1_n | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_3 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_2 | 40 | 40 | Mth01_CatVar_Summ_ByGrp_2_pct | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_1 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_1 | 38.3720930232558 | ( 38.4) | Mth01_CatVar_Summ_ByGrp_2_pct | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_1 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_2 | 61.6279069767442 | ( 61.6) | Mth01_CatVar_Summ_ByGrp_2_pct | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_2 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_1 | 40.4761904761905 | ( 40.5) | Mth01_CatVar_Summ_ByGrp_2_pct | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_2 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_2 | 59.5238095238095 | ( 59.5) | Mth01_CatVar_Summ_ByGrp_2_pct | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_3 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_1 | 52.3809523809524 | ( 52.4) | Mth01_CatVar_Summ_ByGrp_2_pct | AnlsGrouping_01_Trt | AnlsGrouping_01_Trt_3 | AnlsGrouping_02_Sex | AnlsGrouping_02_Sex_2 | 47.6190476190476 | ( 47.6) |
|
...