Пример #1
0
def medication_counts_and_dates(var_name, med_codelist_file, high_cost, needs_6m_12m=False):
    """
    Generates dictionary of covariats for a medication including counts (or binary flags for high cost drugs) and dates
    
    Takes a variable prefix and medication codelist filename (minus .csv)
    Returns a dictionary suitable for unpacking into the main study definition
    This will include all five of the items defined in the functions above
    """
    
    definitions={}
    if (med_codelist_file[0:5] == "cross"):
        med_codelist_file = "crossimid-codelists/" + med_codelist_file
    else:
        med_codelist_file = "codelists/" + med_codelist_file
    if (high_cost):
        med_codelist=codelist_from_csv(med_codelist_file + ".csv", system="high_cost_drugs", column="olddrugname")
        with_med_func=patients.with_high_cost_drugs
    else:
        med_codelist=codelist_from_csv(med_codelist_file + ".csv", system="snomed", column="snomed_id")
        with_med_func=patients.with_these_medications
    med_functions=[
        ("3m_0m", get_medication_for_dates, {"dates": ["2019-12-01", "2020-02-29"], "return_count": not high_cost}),
        ("6m_3m", get_medication_for_dates, {"dates": ["2019-09-01", "2020-11-30"], "return_count": not high_cost})
    ]
    if (needs_6m_12m):
      med_functions += [("12m_6m", get_medication_for_dates, {"dates": ["2019-03-01", "2020-08-31"], "return_count": not high_cost})]
    for (suffix, fun, params) in med_functions:
        definitions[var_name + "_" + suffix] = fun(med_codelist, with_med_func, **params)
    return definitions
Пример #2
0
def medication_counts_and_dates(var_name, med_codelist_file):
    """
    Generates dictionary of covariats for a medication including counts and dates
    
    Takes a variable prefix and medication codelist filename (minus .csv)
    Returns a dictionary suitable for unpacking into the main study definition
    This will include all five of the items defined in the functions above
    """

    definitions = {}
    med_codelist = codelist_from_csv("codelists/" + med_codelist_file + ".csv",
                                     system="snomed",
                                     column="snomed_id")
    med_functions = [("3m_0m", medication_count_3m_0m),
                     ("6m_3m", medication_count_6m_3m),
                     ("12m_6m", medication_count_12m_6m),
                     ("earliest", medication_earliest),
                     ("latest", medication_latest)]
    for (suffix, fun) in med_functions:
        definitions[var_name + "_" + suffix] = fun(med_codelist)
    return definitions
Пример #3
0
from cohortextractor import codelist_from_csv
from config import codelist_path, codelist_system, codelist_code_column

# Change the path of the codelist to your chosen codelist
codelist = codelist_from_csv(
    codelist_path,
    system=codelist_system,
    column=codelist_code_column,
)

ethnicity_codes = codelist_from_csv(
    "codelists/opensafely-ethnicity.csv",
    system="ctv3",
    column="Code",
    category_column="Grouping_6",
)

ld_codes = codelist_from_csv(
    "codelists/opensafely-learning-disabilities.csv",
    system="ctv3",
    column="CTV3Code",
)
Пример #4
0
from cohortextractor import (
    codelist_from_csv,
    codelist,
)


# OUTCOME CODELISTS
covid_codelist = codelist_from_csv(
    "codelists/opensafely-covid-identification.csv",
    system="icd10",
    column="icd10_code",
)

covid_identification_in_primary_care_case_codes_clinical = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-probable-covid-clinical-code.csv",
    system="ctv3",
    column="CTV3ID",
)

covid_identification_in_primary_care_case_codes_test = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-probable-covid-positive-test.csv",
    system="ctv3",
    column="CTV3ID",
)

covid_identification_in_primary_care_case_codes_seq = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-probable-covid-sequelae.csv",
    system="ctv3",
    column="CTV3ID",
)
# Import functions

from cohortextractor import (
    StudyDefinition,
    patients,
    codelist,
    codelist_from_csv
)

# Import codelists

chronic_cardiac_disease_codes = codelist_from_csv(
    "codelists/opensafely-chronic-cardiac-disease.csv", system="ctv3", column="CTV3ID"
)
chronic_liver_disease_codes = codelist_from_csv(
    "codelists/opensafely-chronic-liver-disease.csv", system="ctv3", column="CTV3ID"
)
chronic_kidney_disease_codes = codelist_from_csv(
    "codelists/opensafely-chronic_kidney_disease_codescsv", system="ctv3", column="CTV3ID"
)
hypertension_codes = codelist_from_csv(
    "codelists/opensafely-hypertension_codes.csv", system="ctv3", column="CTV3ID"
)
chronic_diabetes_codes = codelist_from_csv(
    "codelists/opensafely-chronic_diabetes_codes.csv", system="ctv3", column="CTV3ID"
)
chronic_respiratory_disease_disease_codes = codelist_from_csv(
    "codelists/opensafely-chronic-respiratory_disease_codes.csv", system="ctv3", column="CTV3ID"
)
solid_organ_transplantation_codes = codelist_from_csv(
from cohortextractor import (
    codelist_from_csv,
    codelist,
)

# OUTCOME CODELISTS
covid_identification = codelist_from_csv(
    "codelists/opensafely-covid-identification.csv",
    system="icd10",
    column="icd10_code",
)

covid_pos_primcare_code = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-probable-covid-clinical-code.csv",
    system="ctv3",
    column="CTV3ID",
)

covid_pos_primcare_test = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-probable-covid-positive-test.csv",
    system="ctv3",
    column="CTV3ID",
)

# MEDICATIONS - EXPOSURES

# DEMOGRAPHIC CODELIST
ethnicity_codes = codelist_from_csv(
    "codelists/opensafely-ethnicity.csv",
    system="ctv3",
    column="Code",
from cohortextractor import (
    codelist,
    codelist_from_csv,
)

covid_codelist = codelist(["U071", "U072"], system="icd10")

confirmed_covid_codelist = codelist(["U071"], system="icd10")

suspected_covid_codelist = codelist(["U072"], system="icd10")

covid_primary_care_positive_test=codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-probable-covid-positive-test.csv",
    system="ctv3", 
    column="CTV3ID",
)

covid_primary_care_code=codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-probable-covid-clinical-code.csv",
    system="ctv3", 
    column="CTV3ID",
)

covid_primary_care_sequalae=codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-probable-covid-sequelae.csv",
    system="ctv3",
    column="CTV3ID",
)

covid_primary_care_exposure = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-exposure-to-disease.csv", 
Пример #8
0
from cohortextractor import (
    codelist,
    codelist_from_csv,
)

## measurement codes

codes_ICD10_covid = codelist_from_csv(
    "codelists/opensafely-covid-identification.csv",
    system="icd10",
    column="icd10_code")

codes_cholesterol = codelist_from_csv(
    "codelists-local/cholesterol-measurement.csv", system="ctv3", column="id")

codes_inr = codelist_from_csv(
    "codelists-local/international-normalised-ratio-measurement.csv",
    system="ctv3",
    column="id")
from cohortextractor import (
    codelist,
    codelist_from_csv,
)

ethnicity_codes = codelist_from_csv(
    "codelists/opensafely-ethnicity.csv",
    system="ctv3",
    column="Code",
    category_column="Grouping_6",
)

dementia_codes = codelist_from_csv(
    "codelists/opensafely-dementia-complete.csv",
    system="ctv3",
    column="code",
)

chronic_respiratory_disease_codes = codelist_from_csv(
    "codelists/opensafely-chronic-respiratory-disease.csv",
    system="ctv3",
    column="CTV3ID",
)

chronic_cardiac_disease_codes = codelist_from_csv(
    "codelists/opensafely-chronic-cardiac-disease.csv",
    system="ctv3",
    column="CTV3ID",
)

diabetes_codes = codelist_from_csv(
Пример #10
0
from cohortextractor import (
    codelist,
    codelist_from_csv,
)

covid_codelist = codelist(["U071", "U072"], system="icd10")
covidconf_codelist = codelist(["U071"], system="icd10")


aplastic_codes = codelist_from_csv(
    "codelists/opensafely-aplastic-anaemia.csv", system="ctv3", column="CTV3ID"
)

hiv_codes = codelist_from_csv(
    "codelists/opensafely-hiv.csv", system="ctv3", column="CTV3ID", category_column="CTV3ID"
)

hepc_codes = codelist_from_csv(
    "codelists/opensafely-hepatitis-c.csv",
    system="ctv3", 
    column="CTV3ID", 
    category_column="CTV3ID"
)

permanent_immune_codes = codelist_from_csv(
    "codelists/opensafely-permanent-immunosuppression.csv",
    system="ctv3",
    column="CTV3ID",
)

temp_immune_codes = codelist_from_csv(
Пример #11
0
from cohortextractor import(
    codelist, 
    codelist_from_csv,
)

covid_codelist = codelist(["U071", "U072"], system = "icd10")


# https://codelists.opensafely.org/codelist/opensafely/severe-and-profound-learning-disability-flags/44ef542a/
severe_and_profound_learning_disability_codes = codelist_from_csv(
    "codelists/opensafely-severe-and-profound-learning-disability-flags-44ef542a.csv", 
    system = "ctv3", 
    column = "code",
)



# https://codelists.opensafely.org/codelist/opensafely/intellectual-disability-including-downs-syndrome/2020-08-27/
intellectual_disability_including_downs_syndrome_codes = codelist_from_csv(
    "codelists/opensafely-intellectual-disability-including-downs-syndrome-2020-08-27.csv",
    system="ctv3",
    column="CTV3ID",
)



Пример #12
0
from cohortextractor import (
    codelist_from_csv,
    codelist,
)


# drug placeholder
ics_codes = codelist_from_csv(
    "codelists/opensafely-high-dose-ics-inhalers.csv",
    system="snomed",
    column="id",
    )

# OUTCOME CODELISTS
covid_identification = codelist_from_csv(
    "codelists/opensafely-covid-identification.csv",
    system="icd10",
    column="icd10_code",
)

# DEMOGRAPHIC CODELIST
ethnicity_codes = codelist_from_csv(
    "codelists/opensafely-ethnicity.csv",
    system="ctv3",
    column="Code",
    category_column="Grouping_6",
)

# SMOKING CODELIST
clear_smoking_codes = codelist_from_csv(
    "codelists/opensafely-smoking-clear.csv",
from cohortextractor import codelist, codelist_from_csv
stroke = codelist_from_csv(
    "codelists/opensafely-incident-non-traumatic-stroke.csv",
    system="ctv3",
    column="CTV3ID",
)
stroke_hospital = codelist_from_csv(
    "codelists/opensafely-stroke-secondary-care.csv",
    system="icd10",
    column="icd")
aki_codes = codelist(["N17", "N170", "N171", "N172", "N178", "N179"],
                     system="icd10")
mi_codes = codelist_from_csv(
    "codelists/opensafely-myocardial-infarction-2.csv",
    system="ctv3",
    column="CTV3Code",
)
mi_codes_hospital = codelist_from_csv(
    "codelists/opensafely-cardiovascular-secondary-care.csv",
    system="icd10",
    column="icd",
    category_column="mi",
)
heart_failure_codes = codelist_from_csv(
    "codelists/opensafely-heart-failure.csv",
    system="ctv3",
    column="CTV3ID",
)
heart_failure_codes_hospital = codelist_from_csv(
    "codelists/opensafely-cardiovascular-secondary-care.csv",
    system="icd10",
Пример #14
0
## LIBRARIES

# cohort extractor
from cohortextractor import (StudyDefinition, Measure, patients,
                             codelist_from_csv, codelist,
                             filter_codes_by_category, combine_codelists)

## CODELISTS
# All codelist are held within the codelist/ folder.

codes_diab = codelist_from_csv("codelists/opensafely-type-2-diabetes.csv",
                               system="ctv3",
                               column="CTV3ID")

## STUDY POPULATION
# Defines both the study population and points to the important covariates

index_date = "2020-01-01"
end_date = "2020-09-30"

study = StudyDefinition(
    # Configure the expectations framework
    default_expectations={
        "date": {
            "earliest": index_date,
            "latest": end_date
        },
        "rate": "uniform",
    },
    index_date=index_date,
from cohortextractor import (
    codelist,
    codelist_from_csv,
)

adrenaline_pen = codelist_from_csv("codelists/opensafely-adrenaline-pens.csv",
                                   system="snomed",
                                   column="dmd_id")

chronic_cardiac_disease_codes = codelist_from_csv(
    "codelists/opensafely-chronic-cardiac-disease.csv",
    system="ctv3",
    column="CTV3ID",
)

chemotherapy_or_radiotherapy_codes = codelist_from_csv(
    "codelists/opensafely-chemotherapy-or-radiotherapy.csv",
    system="ctv3",
    column="CTV3ID",
)
cancer_excluding_lung_and_haematological_codes = codelist_from_csv(
    "codelists/opensafely-cancer-excluding-lung-and-haematological.csv",
    system="ctv3",
    column="CTV3ID",
)

covid_primary_care_positive_test = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-probable-covid-positive-test.csv",
    system="ctv3",
    column="CTV3ID",
)
Пример #16
0
## LIBRARIES

# cohort extractor
from cohortextractor import (StudyDefinition, patients, codelist_from_csv, codelist)

##CODE LIST
systolic_blood_pressure_codes = codelist(["2469."], system="ctv3")
ace_inhibitor_codes = codelist_from_csv("codelists/opensafely-ace-inhibitor-medications.csv",system="snomed",column="id")
arb_inhibitor_codes = codelist_from_csv("codelists/opensafely-angiotensin-ii-receptor-blockers-arbs.csv", system='snomed', column='id')
hf_codes = codelist_from_csv("codelists/opensafely-heart-failure.csv", system="ctv3", column="CTV3ID")
ckd_codes = codelist_from_csv("codelists/opensafely-chronic-kidney-disease.csv", system="ctv3", column="CTV3ID")

## STUDY POPULATION
study = StudyDefinition(

    # define default dummy data behaviour
    # Configure the expectations framework
    default_expectations = {
        "date": {"earliest": "1900-01-01", "latest": "today"},
        "rate": "exponential_increase",
        "incidence": 0.5,
        "float": {"distribution": "normal", "mean": 80, "stddev": 10}},
 
   
    # define the study index date
    index_date = "2020-01-01",

    # define the study population
    population = patients.all(),

    # define the study variables
Пример #17
0
from cohortextractor import (
    codelist,
    codelist_from_csv,
)

placeholder_event_codes = codelist_from_csv(  #### USED AS A PLACEHOLDER
    "codelists/opensafely-diabetes.csv",
    system="ctv3",
    column="CTV3ID")

placeholder_med_codes = codelist_from_csv(
    "codelists/opensafely-asthma-inhaler-steroid-medication.csv",
    system="snomed",
    column="id",
)

ethnicity_codes = codelist_from_csv(
    "codelists/opensafely-ethnicity.csv",
    system="ctv3",
    column="Code",
    category_column="Grouping_6",
)

clear_smoking_codes = codelist_from_csv(
    "codelists/opensafely-smoking-clear.csv",
    system="ctv3",
    column="CTV3Code",
    category_column="Category",
)

unclear_smoking_codes = codelist_from_csv(
Пример #18
0
# Some covariates used in the study are created from codelists of clinical conditions or
# numerical values available on a patient's records.
# This script fetches all of the codelists identified in codelists.txt from OpenCodelists.

######################################

# --- IMPORT STATEMENTS ---

## Import code building blocks from cohort extractor package
from cohortextractor import (codelist, codelist_from_csv, combine_codelists)

## Ethnicity
ethnicity_codes = codelist_from_csv(
    "codelists/primis-covid19-vacc-uptake-eth2001.csv",
    system="snomed",
    column="code",
    category_column="grouping_16_id",
)

## BMI
bmi_codes = codelist_from_csv(
    "codelists/primis-covid19-vacc-uptake-bmi.csv",
    system="snomed",
    column="code",
)

## Diabetes
diabetes_codes = codelist_from_csv(
    "codelists/primis-covid19-vacc-uptake-diab.csv",
    system="snomed",
    column="code",
Пример #19
0
from cohortextractor import Measure, StudyDefinition, codelist_from_csv, patients

chronic_liver_disease_codes = codelist_from_csv(
    "codelists/opensafely-chronic-liver-disease.csv",
    system="ctv3",
    column="CTV3ID")

study = StudyDefinition(
    index_date="2020-02-01",
    default_expectations={
        "date": {
            "earliest": "1900-01-01",
            "latest": "index_date"
        },
        "rate": "exponential_increase",
    },
    population=patients.registered_with_one_practice_between(
        "index_date - 1 year", "index_date"),
    has_chronic_liver_disease=patients.with_these_clinical_events(
        chronic_liver_disease_codes,
        returning="binary_flag",
        return_expectations={
            "incidence": 1.0,
            "date": {
                "earliest": "1950-01-01",
                "latest": "index_date"
            },
        },
    ),
    stp=patients.registered_practice_as_of(
        "index_date",
Пример #20
0
from cohortextractor import (
    codelist,
    codelist_from_csv,
)

# https://codelists.opensafely.org/codelist/opensafely/icd-10-chapter-ix/4868c7af/
cvd_codelist = codelist_from_csv(
    "codelists/opensafely-icd-10-chapter-ix.csv",
    system="icd10",
    column="code",
)


# https://codelists.opensafely.org/codelist/opensafely/icd-10-chapter-x/2f59547a/
resp_codelist = codelist_from_csv(
    "codelists/opensafely-icd-10-chapter-x.csv",
    system="icd10", 
    column="code",
)


# https://codelists.opensafely.org/codelist/opensafely/icd-10-chapter-ii/77d4ee23/
cancer_codelist = codelist_from_csv(
    "codelists/opensafely-icd-10-chapter-ii.csv",
    system="icd10",
    column="code",
)

#https://codelists.opensafely.org/codelist/opensafely/ethnicity/2020-04-27/
ethnicity_codes = codelist_from_csv(
        "codelists/opensafely-ethnicity.csv",
# Risk groups
chd_code = codelist("CHD_COV_COD", system="snomed")
resp_code = codelist("RESP_COV_COD", system="snomed")
ckd_code = codelist("CKD_COV_COD", system="snomed")
cld_code = codelist("CLD_COD", system="snomed")
diab_code = codelist("DIAB_COD", system="snomed")
immdx_code = codelist("IMMDX_COV_COD", system="snomed")
cns_code = codelist("CNS_COV_COD", system="snomed")
spln_code = codelist("SPLN_COV_COD", system="snomed")
obesity_code = codelist("SEV_OBESITY", system="snomed")
learndis_code = codelist("LEARNDIS_COD", system="snomed")
mental_code = codelist("SEV_MENTAL_COD", system="snomed")

clinical_riskgroup_codes = codelist_from_csv(
    "codelists-local/clinical-riskgroup-disease.csv",
    system="snomed",
    column="code",
)

all_riskgroup_codes = codelist_from_csv(
    "codelists-local/all-riskgroup-disease.csv",
    system="snomed",
    column="code",
)

# Covid shielding
shield_code = codelist("SHIELD_COD", system="snomed")

# Household member of shielding patient
hhld_code = codelist("HHLD_IMDEF", system="snomed")
Пример #22
0
from cohortextractor import (
    StudyDefinition,
    Measure,
    patients,
    codelist,
    codelist_from_csv,
)

chronic_cardiac_disease_codes = codelist_from_csv(
    "codelists/opensafely-chronic-cardiac-disease.csv",
    system="ctv3",
    column="CTV3ID")
chronic_liver_disease_codes = codelist_from_csv(
    "codelists/opensafely-chronic-liver-disease.csv",
    system="ctv3",
    column="CTV3ID")
salbutamol_codes = codelist_from_csv(
    "codelists/opensafely-asthma-inhaler-salbutamol-medication.csv",
    system="snomed",
    column="id",
)
systolic_blood_pressure_codes = codelist(["2469."], system="ctv3")
diastolic_blood_pressure_codes = codelist(["246A."], system="ctv3")

study = StudyDefinition(
    index_date="2020-02-01",
    # Configure the expectations framework
    default_expectations={
        "date": {
            "earliest": "1900-01-01",
            "latest": "index_date"
from cohortextractor import codelist, codelist_from_csv

codes_antigen_negative = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-antigen-test-negative.csv",
    system="ctv3",
    column="CTV3ID",
)

codes_exposure_to_disease = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-exposure-to-disease.csv",
    system="ctv3",
    column="CTV3ID",
)

codes_historic_covid = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-historic-case.csv",
    system="ctv3",
    column="CTV3ID",
)

codes_potential_historic_covid = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-potential-historic-case.csv",
    system="ctv3",
    column="CTV3ID",
)

codes_probable_covid = codelist_from_csv(
    "codelists/opensafely-covid-identification-in-primary-care-probable-covid-clinical-code.csv",
    system="ctv3",
    column="CTV3ID",
)
Пример #24
0
## LIBRARIES

# cohort extractor
from cohortextractor import (StudyDefinition, Measure, patients,
                             codelist_from_csv, codelist,
                             filter_codes_by_category, combine_codelists)

## CODELISTS
# All codelist are held within the codelist/ folder.
codes_ICD10_covid = codelist_from_csv(
    "codelists/opensafely-covid-identification.csv",
    system="icd10",
    column="icd10_code")

## STUDY POPULATION
# Defines both the study population and points to the important covariates

index_date = "2020-01-01"
end_date = "2020-09-30"

study = StudyDefinition(
    # Configure the expectations framework
    default_expectations={
        "date": {
            "earliest": index_date,
            "latest": end_date
        },
        "rate": "uniform",
    },
    index_date=index_date,
## LIBRARIES

# cohort extractor
from cohortextractor import (StudyDefinition, Measure, patients,
                             codelist_from_csv, codelist,
                             filter_codes_by_category, combine_codelists)

## CODELISTS
# All codelist are held within the codelist/ folder.
codes_cholesterol = codelist_from_csv(
    "codelists-local/cholesterol-measurement.csv", system="ctv3", column="id")

codes_inr = codelist_from_csv(
    "codelists-local/international-normalised-ratio-measurement.csv",
    system="ctv3",
    column="id")

# dictionary of STP codes (for dummy data)
from dictionaries import dict_stp

## STUDY POPULATION

index_date = "2020-01-01"

study = StudyDefinition(
    # Configure the expectations framework
    default_expectations={
        "date": {
            "earliest": index_date,
            "latest": "today"
        },