opensafely / ics-research

This is the code and configuration for our paper, Inhaled corticosteroid use and risk COVID-19 related death among 966,461 patients with COPD or asthma
https://opensafely.org
0 stars 1 forks source link

*MEDICINE*: vaccination status #23

Closed sebbacon closed 4 years ago

sebbacon commented 4 years ago

Vaccination status - get from both Read codes and vaccination table. https://github.com/ebmdatalab/tpp-sql-notebook/blob/cohort-extraction/notebooks/flu-vacc-covariate.ipynb

In adults:

In children:

alexwalkerepi commented 4 years ago

Example using flu vaccines is here, but only uses Read codes so far, as the current build of the dummy dataset doesn't contain the vaccination table yet. https://github.com/ebmdatalab/tpp-sql-notebook/blob/cohort-extraction/notebooks/flu-vacc-covariate.ipynb

annaschultze commented 4 years ago

@alexwalkercebm we're aiming to include this as a covariate in the ICS study (at least flu vaccination) - is there a separate vaccination table in the data as of now? @ianjdouglas may know if we have existing code lists from lshtm for Read and/or Immunisation codes from CPRD studies (but not sure whether the coding systems for immunisations would be the same)

ianjdouglas commented 4 years ago

@brianmackenna mentioned he has ways of looking for vaccines :-)

brianmackenna commented 4 years ago

The database schema has separate fields for

@chris-tpp has also mentioned on slack

Bit of a mix. There is a native vaccination table which the majority of entries are in. This contains reference data to antigen content so you can pretty easily create the list you are interested in. There will also be some in Read codes that are entered as coded entries e.g. 65E.. is a flu vaccination code that does get used in bulk after flu jab clinics.

@chris-tpp you might have answers to some of these questions?

chris-tpp commented 4 years ago

Nothing in medication but there are vaccinations as both codes and as a native structure. Don’t need to do any DM+D work.

I’d get the vaccination reference data sent to you - it’s a reference table of all possible native vaccs with a field for antigen content. Only a couple of hundred entries, I think.

There are some vaccs recorded as codes in the main coded event table too. This tends to be for things like bulk addition of flu vaccs, if the GP practice use this functionality to add codes instead. That is a SNOMED search. I’d find the highest level parent vacc/ imm code and then we’ll port it back to get you a list for validation.

brianmackenna commented 4 years ago

@chris-tpp Will build SNOMED search - presume there are a lot of 955691000000108 Seasonal influenza vaccination given by pharmacist

From what are the vaccine reference tables built?

Reason I ask is that 10k flu vaccines appear to go through tradsitional FP10 as opposed to vaccine FP34. Would this 10k get picked up in the vaccine ref table?

brianmackenna commented 4 years ago

Discussion and investigations today. There are three places for recording a vaccine

We propose to use a combination of the thee i.e. “Vaccine tables + medication issues + CTV3 codes”

Depending on data we could use a hierarchy or presence of each.

brianmackenna commented 4 years ago

Creating separate issues for each vaccine as a result of this complexity.

pneumococcal flu

brianmackenna commented 4 years ago

After further work we have divided into a pragmatic rule option to identify vaccines administered and an optional second option with clinical codes depending on the research question/resource

1st Pragmatic Option: Patient appears in TPP vaccination table & dm+d medication issue (include all strains of pneumococcal for this study)

or 

2nd Additional Option: Presence of clinical code indicative of vaccination (where more than one code appears in the record we use the algorithm on the sheet "comments" from excel file) 

@evansd will have some ides but way to query TPP dataset is