Skip to content

Data Guidelines

Spencer Childress edited this page Oct 30, 2018 · 33 revisions

AE Timelines are initialized using JSON data files that match the format created by d3.csv(). The chart requires a data set with one record per adverse event with placeholder rows added for participants who didn't experience any adverse events over the course of the study. The chart uses column names from the AdAM data standard by default, but can be customized to work with any column names as long as the data structure is as expected.

Default Chart

The following columns are expected in a data file used to create an instance of AE Timelines. A sample chart using this configuration is found here.

Data Specification

Settings Variable Description Default Required?
id_col Unique Subject Identifier USUBJID Y
seq_col Sequence Number AESEQ Y
stdy_col Analysis Start Relative Day ASTDY Y
endy_col Analysis End Relative Day AENDY Y
term_col Reported Term AETERM Y
color.value_col Severity/Intensity AESEV Y *
highlight.value_col Serious Event AESER
* a coloring variable of some sort is required but it does not have to be AESEV

Settings

No customization is needed to initialize a chart when the data object contains all default variables above. Just pass an empty object ({}) for settings and initialize the chart like so: aeTimelines('body', {}).init(data).

Customized Chart with Queries

The following data specs and chart settings can be used to create a chart with several custom filters, including Sex, Race and Query Status. The chart also highlights severe AEs and events under query. A sample chart using this configuration is found here.

Data Specification

Settings Variable Description Default Required?
id_col Unique Subject Identifier USUBJID Y
seq_col Sequence Number AESEQ Y
stdy_col Analysis Start Relative Day ASTDY Y
endy_col Analysis End Relative Day AENDY Y
term_col Reported Term AETERM Y
color.value_col Severity/Intensity AESEV Y *
highlight.value_col Serious Event AESER
filter AE Seriousness AESER Y
filter AE Severity AESEV Y
filter AE Relationship AEREL Y
filter AE Outcome AEOUT Y
filter Site ID SITEID Y
filter Treatment Arm ARM Y
filter Sex SEX Y
filter Race RACE Y
filter Query Flag ("Y" for yes) QUERYFL Y
* a coloring variable of some sort is required but it does not have to be AESEV

Settings Object

     var settings =
        {color:
            {value_col: 'AEREL'
            ,label: 'Relationship'
            ,values:
                ['NOT RELATED'
                ,'UNLIKELY RELATED'
                ,'POSSIBLY RELATED'
                ,'PROBABLY RELATED'
                ,'DEFINITELY RELATED']}
        ,highlight:
            {value_col: 'QUERYFL'
            ,label: 'Open Query'
            ,value: 'Y'
            ,detail_col: 'QUERY'
            ,attributes:
                {'stroke': 'black'
                ,'stroke-width': '8'
                ,'fill': 'none'
                ,'stroke-opacity':"0.2"}}
        ,custom_marks:
            [
                {type: 'circle'
                ,per: ['USUBJID', 'AESEQ', 'wc_value']
                ,tooltip: 'Serious Adverse Event'
                ,radius: 6
                ,attributes:
                    {'fill-opacity': .5
                    ,'fill': 'None'
                    ,'stroke': 'Red'}
                ,values: {"AESER": ['Y'] ,"wc_category":["ASTDY"]}}
            ]
        ,filters:
            [   {value_col: 'AESER', label: 'Serious Event'}
            ,   {value_col: 'AEREL', label: 'Relationship'}
            ,   {value_col: 'AESEV', label: 'Severity/Intensity'}
            ,   {value_col: 'USUBJID', label: 'Subject Identifier'}
            ,   {value_col: 'ARM', label: 'Arm'}
            ,   {value_col: 'SITEID', label: 'Site ID'}
            ,   {value_col: 'SEX', label: 'Sex'}
            ,   {value_col: 'RACE', label: 'Race'}
            ,   {value_col: 'QUERYFL', label: 'Has query?'}

            ]};
Clone this wiki locally