You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We are looking for a solution for performance validation of healthcare data in the FHIR format. Details are described here: beda-software/FHIRPathMappingLanguage#18
Patito looks very interesting and I was wondering whether you could say something about vectorized validation of struct columns with polars and patito?
Basic idea
We want a performant solution for tabular legacy --> FHIR mappings like this (note: this code doesn't work):
importpanderaaspafrompandera.engines.pandas_engineimportPydanticModel# PydanticModel only available in pandas_engineimportpolarsasplfromresourcesimportPatientclassPatientSchema(pa.DataFrameModel):
"""Pandera schema using the pydantic model."""classConfig:
"""Config with dataframe-level data type."""dtype=PydanticModel(Patient)
coerce=True# this is required, otherwise a SchemaInitError is raisedpatient=pl.read_json("general-person-example.json")
PatientSchema.validate(patient)
Even when this is implemented, it does row-wise validation and doesn't use the vectorization of polars. To leverage that, we need to extend the FHIR types with column-level checks in polars
We are looking for a solution for performance validation of healthcare data in the FHIR format. Details are described here:
beda-software/FHIRPathMappingLanguage#18
Patito looks very interesting and I was wondering whether you could say something about vectorized validation of struct columns with polars and patito?
Basic idea
We want a performant solution for tabular legacy --> FHIR mappings like this (note: this code doesn't work):
Current issues
PydanticModel
still needs to be implemented inpolars_engine
, see AddPydanticModel
topandera.engines.polars_engine
(polars engine support for pydantic models) unionai-oss/pandera#1874tagging @ir4y and @yannick-vinkesteijn
The text was updated successfully, but these errors were encountered: