pyhealth.tasks.patient_linkage_mimic3#
- class pyhealth.tasks.patient_linkage_mimic3.PatientLinkageMIMIC3Task(code_mapping=None)[source]#
Bases:
BaseTaskPatient linkage task for MIMIC-III.
For each patient with >=2 admissions: - Query: last admission - Positive database record: all previous admissions concatenated
This creates ONE positive pair per patient. Negatives are sampled later during training (in-batch + hard negatives).
Example
>>> from pyhealth.datasets import MIMIC3Dataset >>> from pyhealth.tasks import PatientLinkageMIMIC3Task >>> dataset = MIMIC3Dataset( ... root="/srv/local/data/physionet.org/files/mimiciii/1.4", ... tables=["diagnoses_icd", "admissions", "patients"], ... ) >>> task = PatientLinkageMIMIC3Task() >>> sample_dataset = dataset.set_task(task)
- input_schema: Dict[str, Union[str, Type]] = {'age': 'raw', 'conditions': 'sequence', 'd_age': 'raw', 'd_conditions': 'sequence', 'd_identifiers': 'raw', 'd_timestamp': 'raw', 'd_visit_id': 'raw', 'd_visit_ids': 'raw', 'identifiers': 'raw', 'patient_id': 'raw', 'time_gap_days': 'raw', 'timestamp': 'raw', 'visit_id': 'raw'}#
- pre_filter(df)#
- Return type:
LazyFrame