Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
Aydawka committed Jun 19, 2024
2 parents 5c160ca + bc40b26 commit 0f0e8bb
Show file tree
Hide file tree
Showing 21 changed files with 529 additions and 249 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,9 @@ This data model is **person-centric**. Therefore, all of the clinical data table

## Examples in AI-READI Documentation

You will see in our documentation site that we have described these notations in detail for particular types of clinical data, including [clinical lab tests](clinical-lab-tests), [cognitive testing](cognition-MoCA), [monofilament testing](monofilament-testing), [physical assessment](physical-assessment), and [vision assessment](vision-assessment). By going to each of those individual pages, you can see which table contains that particular data type, what each column header is, a description for each, and example output in the data file.
You will see in our documentation site that we have described these notations in detail for particular types of clinical data, including [clinical lab tests](../clinical-lab-tests), [cognitive testing](../cognition-MoCA), [monofilament testing](../monofilament-testing), [physical assessment](../physical-assessment), and [vision assessment](../vision-assessment). By going to each of those individual pages, you can see which table contains that particular data type, what each column header is, a description for each, and example output in the data file.

For example, let's use the [physical assessment](physical-assessment) information as a specific illustration. Physical assessment in AI-READI includes height, weight, body mass index, waist circumference, hip circumference, waist-to-hip ratio, heart rate, and blood pressure. By looking at the [documentation page](physical-assessment), you can see that if you are interested in analyzing these values from the dataset, you would find them in the 'measurement.csv' file in the Clinical Data folder. The final section on 'Metadata and Example Outputs' will walk you through how to interpret the file, and what each column in the header row represents. Note that there are multiple columns to help you identify the concept. There is a column listing the standard OMOP concept ID number (measurement_concept_id, e.g. '4245997') and a text description (measurement_source_value, e.g. 'BMI'). The reason the standard OMOP concept ID number is important is because different data sources can have different ways of representing 'BMI' - for example, one health system may represent it as 'BMI' while another represents it as 'Body Mass Index.' By mapping the various source descriptions to a common, standardized data element (concept ID 4245997), this allows for non-ambiguous representation and ability to then aggregate those data from different sources into a single data repository. In this particular study, we have a uniform protocol across all three data collection sites, so this is less of a harmonization issue at the level of the study itself (i.e., difficulties of harmonizing data across the 3 sites is reduced because we are starting out with a consistent method of data acquisition). However, this is important for downstream analyses wherein data from AI-READI may be used as a validation dataset for analyses performed using other datasets (or vice versa). Having data mapped to standardized terminologies and to a common data model facilitates reproducibility.
For example, let's use the [physical assessment](../physical-assessment) information as a specific illustration. Physical assessment in AI-READI includes height, weight, body mass index, waist circumference, hip circumference, waist-to-hip ratio, heart rate, and blood pressure. By looking at the [documentation page](../physical-assessment), you can see that if you are interested in analyzing these values from the dataset, you would find them in the 'measurement.csv' file in the Clinical Data folder. The final section on 'Metadata and Example Outputs' will walk you through how to interpret the file, and what each column in the header row represents. Note that there are multiple columns to help you identify the concept. There is a column listing the standard OMOP concept ID number (measurement_concept_id, e.g. '4245997') and a text description (measurement_source_value, e.g. 'BMI'). The reason the standard OMOP concept ID number is important is because different data sources can have different ways of representing 'BMI' - for example, one health system may represent it as 'BMI' while another represents it as 'Body Mass Index.' By mapping the various source descriptions to a common, standardized data element (concept ID 4245997), this allows for non-ambiguous representation and ability to then aggregate those data from different sources into a single data repository. In this particular study, we have a uniform protocol across all three data collection sites, so this is less of a harmonization issue at the level of the study itself (i.e., difficulties of harmonizing data across the 3 sites is reduced because we are starting out with a consistent method of data acquisition). However, this is important for downstream analyses wherein data from AI-READI may be used as a validation dataset for analyses performed using other datasets (or vice versa). Having data mapped to standardized terminologies and to a common data model facilitates reproducibility.

Table 2 provides an overview of each data type and which table associated variables can be found. This is a high-level overview guide so that if you are looking for a particular variable, you know which file to access to get information on that variable.

Expand Down Expand Up @@ -79,7 +79,7 @@ Table 2 provides an overview of each data type and which table associated variab
<td>
General categories include demographics, general health, diabetes self care, depression,
social determinants of health, diet, substance use, and vision and access to eye care. For
individual survey items, see the [Questionnaires](questionnaires) page for more information.
individual survey items, see the [Questionnaires](../questionnaires) page for more information.
Note, in OHDSI OMOP CDM, data for patients with negative events isn't typically recorded. However, to capture both negative and positive responses to survey questions, we're recording negative responses alongside positive ones in the observation domain, using the specific question ID as the observation_concept_id.
</td>
<td>Most survey questions are mapped to the Observation domain. Some questions (for example, summary scores) are mapped to the Measurement domain. If a participant reports having a health condition/ clinical disorder, then the self reported clinical disorder or the condition is mapped to the proper condition_concept_id and is recorded in the Condition domain.</td>
Expand Down Expand Up @@ -137,7 +137,7 @@ Resources to learn more about SSSOM:

import StructureTable from '@site/src/components/StructureTable';

<StructureTable />
<a href="/omopTable" target="_blank">See the table here</a>

import PageFeedback from '@site/src/components/PageFeedback';

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
sidebar_position: 2
title: OMOP Mapping Table
---


import {Redirect} from '@docusaurus/router';
import DirectOmopTable from '@site/src/components/DirectOmopTable';


<!-- {/* <Redirect to="/omopTable"/>; */} -->
<DirectOmopTable />

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"label": "OMOP Clinical Data Structure",
"position": 1
}
4 changes: 4 additions & 0 deletions docs/dataset/clinical-data/clinical-lab-tests/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"label": "Clinical Lab Tests",
"position": 2
}
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,9 @@ Clinical lab tests are a fundamental component of medical diagnostics and patien

## Variables included in Data Domain

<a href="/dataDomainTable" target="_blank">See the table here</a>

<ClinicalLabTable />
{/* <ClinicalLabTable /> */}

#### NT-proBNP Reference Intervals
| Age | Female Range | Male Range |
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
sidebar_position: 2
title: Data Domain Table
---


import {Redirect} from '@docusaurus/router';
import DirectDataDomainTable from '@site/src/components/DirectDataDomainTable';

<DirectDataDomainTable />

2 changes: 1 addition & 1 deletion docs/dataset/clinical-data/cognition-MoCA.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 2
sidebar_position: 3
title: Cognition/MoCA
---

Expand Down
11 changes: 11 additions & 0 deletions docs/dataset/wearable-activity-monitor/file-processing-table.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
sidebar_position: 2
title: File Processing Table
---


import {Redirect} from '@docusaurus/router';
import DirectFileProcessingTable from '@site/src/components/DirectFileProcessingTable';


<DirectFileProcessingTable />
Original file line number Diff line number Diff line change
Expand Up @@ -1058,34 +1058,36 @@ Stress: The negative stress values (-1 & -2) originate from the source, possibly

There may be cases in which certain participants do not have certain files, e.g have no measurement file for sleep data. In these cases, the file path will display "none." However, there are also instances where a measurement file exists, but it contains no observations, similar to having data with no meaningful content.

| Metadata Elements | Description | Example |
| ------------------------------ | -------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| participant_id | Identification number of study participant | 0000 |
| wrist_worn_on | Which wrist the fitness tracker was worn on by the participant | Left |
| dominant_hand | Participants dominant hand | Right hand |
| heartrate_filename | Filename containing participants heart rate data | /wearable_activity_monitor/heart_rate/garmin_vivosmart5/1043/0000_heartrate.json |
| heartrate_record_count | Total number of heart rate measurements recorded | 15780 |
| average_heartrate_bpm | Average heart rate during the recording period | 79.35743649 |
| oxygen_saturation_filename | Filename containing participants oxygen saturation (SpO2) data | /wearable_activity_monitor/oxygen_saturation/garmin_vivosmart5/0000/0000_oxygensaturation.json |
| oxygen_saturation_record_count | Total number of SpO2 measurements recorded | 2094 |
| average_oxygen_saturation_pct | Average SpO2 during the recording period | 91.71% |
| stress_level_filename | Filename containing participants stress level data | /wearable_activity_monitor/stress/garmin_vivosmart5/0000/0000_stress.json |
| stress_level_record_count | Total number of stress level measurements recorded | 24659 |
| average_stress_level | Average stress levels during the recording period | 15.37 |
| sleep_filename | Filename containing participants sleep data | /wearable_activity_monitor/sleep/garmin_vivosmart5/0000/0000_sleep.json |
| sleep_record_count | Total number of sleep measurements recorded | 12 |
| average_sleep_hours | Average sleep duration during the recording period | 7.25 |
| respiratory_rate_filename | Filename containing participants respiratory rate data | /wearable_activity_monitor/respiratory_rate/garmin_vivosmart5/0000/0000_respiratoryrate.json |
| respiratory_rate_record_count | Total number of respiratory rate measurements recorded | 2164 |
| average_respiratory_rate_bpm | Average respiratory rate during the recording period | 27.02 |
| physical_activity_filename | Filename containing participants physical activity data | /wearable_activity_monitor/physical_activity/garmin_vivosmart5/0000/0000_activity.json |
| physical_activity_num_records | Total number of measurements recorded | 5524 |
| average_daily_activity | Average number of steps during the recording period | 7897.21 |
| active_calories_filename | Filename containing participants active calories data | /wearable_activity_monitor/physical_activity_calorie/garmin_vivosmart5/0000/0000_calorie.json |
| active_calories_record_count | Total number of calorie measurements recorded | 1773 |
| average_active_calories_kcal | Average number of calories burned during the recording period | 194.11 |
| sensor_sampling_duration_days | How many days the participant wore the fitness tracker | 12 |
| fitness_manufacturer_model | Model of the fitness tracker | Garmin Vivosmart 5 |
<a href="/fileProcessingTable" target="_blank">See the table here</a>

<!-- | Metadata Elements | Description | Example | -->
<!-- | ------------------------------ | -------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -->
<!-- | participant_id | Identification number of study participant | 0000 | -->
<!-- | wrist_worn_on | Which wrist the fitness tracker was worn on by the participant | Left | -->
<!-- | dominant_hand | Participants dominant hand | Right hand | -->
<!-- | heartrate_filename | Filename containing participants heart rate data | /wearable_activity_monitor/heart_rate/garmin_vivosmart5/1043/0000_heartrate.json | -->
<!-- | heartrate_record_count | Total number of heart rate measurements recorded | 15780 | -->
<!-- | average_heartrate_bpm | Average heart rate during the recording period | 79.35743649 | -->
<!-- | oxygen_saturation_filename | Filename containing participants oxygen saturation (SpO2) data | /wearable_activity_monitor/oxygen_saturation/garmin_vivosmart5/0000/0000_oxygensaturation.json | -->
<!-- | oxygen_saturation_record_count | Total number of SpO2 measurements recorded | 2094 | -->
<!-- | average_oxygen_saturation_pct | Average SpO2 during the recording period | 91.71% | -->
<!-- | stress_level_filename | Filename containing participants stress level data | /wearable_activity_monitor/stress/garmin_vivosmart5/0000/0000_stress.json | -->
<!-- | stress_level_record_count | Total number of stress level measurements recorded | 24659 | -->
<!-- | average_stress_level | Average stress levels during the recording period | 15.37 | -->
<!-- | sleep_filename | Filename containing participants sleep data | /wearable_activity_monitor/sleep/garmin_vivosmart5/0000/0000_sleep.json | -->
<!-- | sleep_record_count | Total number of sleep measurements recorded | 12 | -->
<!-- | average_sleep_hours | Average sleep duration during the recording period | 7.25 | -->
<!-- | respiratory_rate_filename | Filename containing participants respiratory rate data | /wearable_activity_monitor/respiratory_rate/garmin_vivosmart5/0000/0000_respiratoryrate.json | -->
<!-- | respiratory_rate_record_count | Total number of respiratory rate measurements recorded | 2164 | -->
<!-- | average_respiratory_rate_bpm | Average respiratory rate during the recording period | 27.02 | -->
<!-- | physical_activity_filename | Filename containing participants physical activity data | /wearable_activity_monitor/physical_activity/garmin_vivosmart5/0000/0000_activity.json | -->
<!-- | physical_activity_num_records | Total number of measurements recorded | 5524 | -->
<!-- | average_daily_activity | Average number of steps during the recording period | 7897.21 | -->
<!-- | active_calories_filename | Filename containing participants active calories data | /wearable_activity_monitor/physical_activity_calorie/garmin_vivosmart5/0000/0000_calorie.json | -->
<!-- | active_calories_record_count | Total number of calorie measurements recorded | 1773 | -->
<!-- | average_active_calories_kcal | Average number of calories burned during the recording period | 194.11 | -->
<!-- | sensor_sampling_duration_days | How many days the participant wore the fitness tracker | 12 | -->
<!-- | fitness_manufacturer_model | Model of the fitness tracker | Garmin Vivosmart 5 | -->

import PageFeedback from '@site/src/components/PageFeedback';

Expand Down
Loading

0 comments on commit 0f0e8bb

Please sign in to comment.