| """ |
| Configuration constants for sleep data processing. |
| Contains dataset names, paths, channel definitions, and event labels. |
| """ |
| import pandas as pd |
| import numpy as np |
|
|
| |
| |
| |
| SHHS = 'shhs' |
| CHAT = 'chat' |
| MROS = 'mros' |
| CCSHS = 'ccshs' |
| CFS = 'cfs' |
| MESA = 'mesa' |
| SOF = 'sof' |
| WSC = 'wsc' |
| HSP = 'hsp' |
| NCHSDB = 'nchsdb' |
| STAGES = 'stages' |
| PATS = 'pats' |
| SHHS2 = 'shhs2' |
| NUMOM2B = 'numom2b' |
|
|
| |
| |
| |
| META_PATH = '/path/to/your/nsrr/data' |
|
|
| MASTER_SHHS = [META_PATH + "/" + SHHS + "/datasets/shhs-harmonized-dataset-0.21.0.csv"] |
| MASTER_CHAT = [META_PATH + "/" + CHAT + "/datasets/chat-harmonized-dataset-0.14.0.csv"] |
| MASTER_MROS = [META_PATH + "/" + MROS + "/datasets/mros-visit1-harmonized-0.6.0.csv"] |
| MASTER_CCSHS = [META_PATH + "/" + CCSHS + "/datasets/ccshs-trec-harmonized-0.8.0.csv"] |
| MASTER_CFS = [META_PATH + "/" + CFS + "/datasets/cfs-visit5-harmonized-dataset-0.7.0.csv"] |
| MASTER_MESA = [META_PATH + "/" + MESA + "/datasets/mesa-sleep-harmonized-dataset-0.7.0.csv"] |
| MASTER_SOF = [META_PATH + "/" + SOF + "/datasets/sof-visit-8-harmonized-dataset-0.8.0.csv"] |
| MASTER_WSC = [META_PATH + "/" + WSC + "/datasets/wsc-harmonized-dataset-0.7.0.csv"] |
| MASTER_HSP = [ |
| META_PATH + "/" + HSP + "/psg-metadata/I0001_psg_metadata_2025-05-06.csv", |
| META_PATH + "/" + HSP + "/psg-metadata/I0002_psg_metadata_2025-05-06.csv", |
| META_PATH + "/" + HSP + "/psg-metadata/I0003_psg_metadata_2025-05-06.csv", |
| META_PATH + "/" + HSP + "/psg-metadata/I0004_psg_metadata_2025-05-06.csv", |
| META_PATH + "/" + HSP + "/psg-metadata/I0006_psg_metadata_2025-05-06.csv", |
| ] |
| MASTER_STAGES = [META_PATH + "/" + STAGES + "/metadata/stages-harmonized-dataset-0.3.0.csv"] |
| MASTER_NCHSDB = [META_PATH + "/" + NCHSDB + "/datasets/nchsdb-dataset-harmonized-0.3.0.csv"] |
| MASTER_PATS = [META_PATH + "/" + PATS + "/datasets/pats-harmonized-dataset-0.1.0.csv"] |
|
|
| MASTER_CSV_LIST = { |
| 'shhs': MASTER_SHHS, |
| 'chat': MASTER_CHAT, |
| 'mros': MASTER_MROS, |
| 'ccshs': MASTER_CCSHS, |
| 'cfs': MASTER_CFS, |
| 'mesa': MASTER_MESA, |
| 'sof': MASTER_SOF, |
| 'wsc': MASTER_WSC, |
| 'hsp': MASTER_HSP, |
| 'stages': MASTER_STAGES, |
| 'pats': MASTER_PATS, |
| 'nchsdb': MASTER_NCHSDB, |
| } |
|
|
| |
| |
| |
| |
| ECG = 'ECG' |
| ECG1 = 'ECG1' |
| ECG2 = 'ECG2' |
| ECG3 = 'ECG3' |
| HR = 'HR' |
| PPG = 'PPG' |
|
|
| |
| SPO2 = 'SPO2' |
| OX = 'OX' |
| ABD = 'ABD' |
| THX = 'THX' |
| AF = 'AF' |
| NP = 'NP' |
| SN = 'SN' |
|
|
| |
| EOG_L = 'EOG_L' |
| EOG_R = 'EOG_R' |
| EOG_E1_A2 = 'EOG_E1_A2' |
| EOG_E2_A1 = 'EOG_E2_A1' |
|
|
| |
| EMG_LLeg = 'EMG_LLeg' |
| EMG_RLeg = 'EMG_RLeg' |
| EMG_LLeg1 = 'EMG_LLeg1' |
| EMG_LLeg2 = 'EMG_LLeg2' |
| EMG_RLeg1 = 'EMG_RLeg1' |
| EMG_RLeg2 = 'EMG_RLeg2' |
| EMG_Leg = 'EMG_Leg' |
|
|
| |
| SENSOR_Leg = 'SENSOR_Leg' |
| SENSOR_LLeg = 'SENSOR_LLeg' |
| SENSOR_LLeg1 = 'SENSOR_LLeg1' |
| SENSOR_LLeg2 = 'SENSOR_LLeg2' |
| SENSOR_RLeg = 'SENSOR_RLeg' |
| SENSOR_RLeg1 = 'SENSOR_RLeg1' |
| SENSOR_RLeg2 = 'SENSOR_RLeg2' |
|
|
| |
| EMG_Chin = 'EMG_Chin' |
| EMG_RChin = 'EMG_RChin' |
| EMG_LChin = 'EMG_LChin' |
| EMG_CChin = 'EMG_CChin' |
|
|
| |
| EEG_C3 = 'EEG_C3' |
| EEG_C4 = 'EEG_C4' |
| EEG_A1 = 'EEG_A1' |
| EEG_A2 = 'EEG_A2' |
| EEG_O1 = 'EEG_O1' |
| EEG_O2 = 'EEG_O2' |
| EEG_F3 = 'EEG_F3' |
| EEG_F4 = 'EEG_F4' |
|
|
| |
| EEG_C3_A2 = 'EEG_C3_A2' |
| EEG_C4_A1 = 'EEG_C4_A1' |
| EEG_F3_A2 = 'EEG_F3_A2' |
| EEG_F4_A1 = 'EEG_F4_A1' |
| EEG_O1_A2 = 'EEG_O1_A2' |
| EEG_O2_A1 = 'EEG_O2_A1' |
|
|
| |
| FPZ = 'FPZ' |
| GROUND = 'GROUND' |
| POS = 'POS' |
|
|
| |
| |
| |
| FREQ_ECG = 128 |
| FREQ_ECG1 = 128 |
| FREQ_ECG2 = 128 |
| FREQ_ECG3 = 128 |
| FREQ_HR = 1 |
| FREQ_PPG = 128 |
|
|
| FREQ_SPO2 = 1 |
| FREQ_OX = 1 |
| FREQ_ABD = 8 |
| FREQ_THX = 8 |
| FREQ_AF = 8 |
| FREQ_NP = 8 |
| FREQ_SN = 32 |
|
|
| FREQ_EOG_L = 64 |
| FREQ_EOG_R = 64 |
| FREQ_EOG_E1_A2 = 64 |
| FREQ_EOG_E2_A1 = 64 |
|
|
| FREQ_EMG_Leg = 64 |
| FREQ_EMG_LLeg = 64 |
| FREQ_EMG_RLeg = 64 |
| FREQ_EMG_LLeg1 = 64 |
| FREQ_EMG_LLeg2 = 64 |
| FREQ_EMG_RLeg1 = 64 |
| FREQ_EMG_RLeg2 = 64 |
|
|
| FREQ_SENSOR_Leg = 64 |
| FREQ_SENSOR_LLeg = 64 |
| FREQ_SENSOR_LLeg1 = 64 |
| FREQ_SENSOR_LLeg2 = 64 |
| FREQ_SENSOR_RLeg = 64 |
| FREQ_SENSOR_RLeg1 = 64 |
| FREQ_SENSOR_RLeg2 = 64 |
|
|
| FREQ_EMG_Chin = 64 |
| FREQ_EMG_LChin = 64 |
| FREQ_EMG_RChin = 64 |
| FREQ_EMG_CChin = 64 |
|
|
| FREQ_EEG_C3 = 64 |
| FREQ_EEG_C4 = 64 |
| FREQ_EEG_A1 = 64 |
| FREQ_EEG_A2 = 64 |
| FREQ_EEG_O1 = 64 |
| FREQ_EEG_O2 = 64 |
| FREQ_EEG_F3 = 64 |
| FREQ_EEG_F4 = 64 |
|
|
| FREQ_EEG_C3_A2 = 64 |
| FREQ_EEG_C4_A1 = 64 |
| FREQ_EEG_F3_A2 = 64 |
| FREQ_EEG_F4_A1 = 64 |
| FREQ_EEG_O1_A2 = 64 |
| FREQ_EEG_O2_A1 = 64 |
|
|
| FREQ_POS = 1 |
|
|
| |
| |
| |
| EVENT_NAME_COLUMN = 'EVENT' |
| START_TIME_COLUMN = 'START_SEC' |
| END_TIME_COLUMN = 'END_SEC' |
|
|
| |
| |
| |
| RESPIRATORY_EVENT_CENTRAL_APNEA = 'Central Apnea' |
| RESPIRATORY_EVENT_OBSTRUCTIVE_APNEA = 'Obstructive Apnea' |
| RESPIRATORY_EVENT_MIXED_APNEA = 'Mixed Apnea' |
| RESPIRATORY_EVENT_HYPOPNEA = 'Hypopnea' |
| RESPIRATORY_EVENT_DESATURATION = 'Oxygen Desaturation' |
|
|
| |
| |
| |
| LIMB_MOVEMENT_ISOLATED = 'Limb Movement Isolated' |
| LIMB_MOVEMENT_PERIODIC = 'Limb Movement Periodic' |
| LIMB_MOVEMENT_ISOLATED_LEFT = 'Left Limb Movement Isolated' |
| LIMB_MOVEMENT_ISOLATED_RIGHT = 'Right Limb Movement Isolated' |
| LIMB_MOVEMENT_PERIODIC_LEFT = 'Left Limb Movement Periodic' |
| LIMB_MOVEMENT_PERIODIC_RIGHT = 'Right Limb Movement Periodic' |
|
|
| |
| |
| |
| AROUSAL_EVENT_CLASSIC = 'Arousal' |
| AROUSAL_EVENT_RESPIRATORY = 'RERA' |
| AROUSAL_EVENT_EMG = 'EMG-Related Arousal' |
|
|