synthetichealth / synthea

Synthetic Patient Population Simulator
https://synthetichealth.github.io/synthea
Apache License 2.0
2.2k stars 657 forks source link

Medications.amount field not included in medications FHIR/CSV #578

Open learn-benner opened 5 years ago

learn-benner commented 5 years ago

Hi,

Thanks for making a great piece of software! I'm an employee of a QIN/QIO that works with Medicare providers and Synthea data has been immensely helpful in prepping/strawmanning for work with provider HL7 data. I've come across the following issue--

The medications (in both FHIR and CSV format) provides the form and dosage via RxNorm, but the medication.amount field (cf. paragraph 2 here: https://www.hl7.org/fhir/medication.html) is not represented in the data. For drugs that are taken daily (e.g. a patient has a prescription for Simvistatin for 1 year, and there are 12 dispenses) the package size can be inferred. For as-needed or temporarily prescribed drugs (e.g. opioids, benzodiazepenes, stimulants) however, it's not possible to tell how many were prescribed to the patient and calculate MME, for example.

Not urgent or totally necessary, but adding an amount_dispensed field to the medications table could allow some analysis that isn't currently possible.

Thanks again! Ben

jawalonoski commented 5 years ago

Thanks for the report.

There aren't currently concepts in Synthea that capture the amount of medication per dose or something like that, except as part of the given code/display. In some modules, there is data for prescriptions, dosage, etc -- but that is used to state things like "2 pills per day for 1 week" than what I think Medication.amount is used for. See https://github.com/synthetichealth/synthea/wiki/Generic-Module-Framework%3A-States#medicationorder

And when that data is available, depending on the export format, it may or may not be exported. For example, in MedicationOrder or MedicationRequest resources.

AndersVO commented 3 years ago

@jawalonoski So there is no way to get medication taken data using Synthea ? not even if you modify a bit yourself?

jawalonoski commented 3 years ago

@jawalonoski So there is no way to get medication taken data using Synthea ?

Medications can be optionally prescribed or administered. When it is administered, it can be considered "taken."

Otherwise, the patients do not self report if the medication was "taken."

That being said, most (but not all) modules simplistically assume that patients adhere to their prescriptions (i.e., that they do actually take their medications).

not even if you modify a bit yourself?

Of course, it is open-source. You can do nearly anything with the code. You can add "medications taken" in simple but coarse manner in a number of different ways, e.g. using an Observation state or modifying the export of medications. You can also do this in a much more sophisticated manner, but actually representing adherence across medications and the impact on multiple comorbidities. But Synthea does not currently do that today, so it would be a significant change.

AndersVO commented 3 years ago

If i use the Medicine Administered in the Module builder.

Will Synthea then generate a MedicationAdministation log ?

like this: https://www.hl7.org/fhir/medicationadministration.html

jawalonoski commented 3 years ago

If i use the Medicine Administered in the Module builder.

Will Synthea then generate a MedicationAdministation log ?

like this: https://www.hl7.org/fhir/medicationadministration.html

Yes, exactly.