Skip to content

Commit

Permalink
Added ability to get subject visits by cohort
Browse files Browse the repository at this point in the history
  • Loading branch information
TheCedarPrince committed Jan 27, 2025
1 parent c5e3539 commit 94d59ce
Showing 1 changed file with 22 additions and 1 deletion.
23 changes: 22 additions & 1 deletion src/getters.jl
Original file line number Diff line number Diff line change
Expand Up @@ -2721,4 +2721,25 @@ function GetVisitAnatomicSite(

end

export GetDatabasePersonIDs, GetPatientState, GetPatientGender, GetPatientRace, GetPatientAgeGroup, GetPatientVisits, GetMostRecentConditions, GetMostRecentVisit, GetVisitCondition, GetPatientEthnicity, GetDatabaseYearRange, GetVisitPlaceOfService, GetVisitConcept, GetVisitDate, GetDrugExposures, GetDrugConceptIDs, GetDrugAmounts, GetVisitProcedure, GetDatabaseCohorts, GetCohortSubjects, GetCohortSubjectStartDate, GetCohortSubjectEndDate, GetDrugExposureIDs, GetDrugExposureEndDate, GetDrugExposureStartDate, GetVisitObservation, GetVisitDrug, GetVisitMeasurement, GetVisitDevice, GetVisitMetadata, GetVisitMeasurementValue, GetVisitAnatomicSite
function GetSubjectVisit(ids, cohort_id; tab = cohort, join_tab = visit_occurrence)

sql =
From(tab) |>
Where(Fun.in(Get.cohort_definition_id, cohort_id...)) |>
Where(Fun.in(Get.subject_id, ids...)) |>
Select(Get.subject_id, Get.cohort_start_date, Get.cohort_end_date) |>
Join(:join_tab => join_tab,
on=Fun.and(
Get.subject_id .== Get.join_tab.person_id,
Fun.between(Get.join_tab.visit_start_date, Get.cohort_start_date, Get.cohort_end_date)
)) |>
Group(Get.join_tab.person_id, Get.join_tab.visit_occurrence_id) |>
q -> render(q, dialect=dialect)

df = DBInterface.execute(conn, sql) |> DataFrame

return df

end

export GetDatabasePersonIDs, GetPatientState, GetPatientGender, GetPatientRace, GetPatientAgeGroup, GetPatientVisits, GetMostRecentConditions, GetMostRecentVisit, GetVisitCondition, GetPatientEthnicity, GetDatabaseYearRange, GetVisitPlaceOfService, GetVisitConcept, GetVisitDate, GetDrugExposures, GetDrugConceptIDs, GetDrugAmounts, GetVisitProcedure, GetDatabaseCohorts, GetCohortSubjects, GetCohortSubjectStartDate, GetCohortSubjectEndDate, GetDrugExposureIDs, GetDrugExposureEndDate, GetDrugExposureStartDate, GetVisitObservation, GetVisitDrug, GetVisitMeasurement, GetVisitDevice, GetVisitMetadata, GetVisitMeasurementValue, GetVisitAnatomicSite, GetSubjectVisit

0 comments on commit 94d59ce

Please sign in to comment.