This PR adds type narrowing operations to the interface
usability example:
Medrecord node attributes with mixed data types (non comparable)
def query(node: NodeOperand):
node.attribute("value").max().less_than(5)
# Throws Error because of mixed data types with hint to use narrowing operation
medrecord.select_nodes(query)
This PR adds type narrowing operations to the interface
usability example:
Medrecord node attributes with mixed data types (non comparable)
Expected tests to fail (same as in the previous PR):
medmodels/medrecord/tests/test_builder.py
medmodels/medrecord/tests/test_datatype.py
medmodels/medrecord/tests/test_indexers.py
medmodels/medrecord/tests/test_medrecord.py
medmodels/medrecord/tests/test_overview.py
medmodels/medrecord/tests/test_schema.py
medmodels/treatment_effect/matching/tests/test_classic_distance_models.py
medmodels/treatment_effect/matching/tests/test_metrics.py
medmodels/treatment_effect/matching/tests/test_propensity_score.py
medmodels/treatment_effect/tests/test_continuous_estimators.py
medmodels/treatment_effect/tests/test_temporal_analysis.py
medmodels/treatment_effect/tests/test_treatment_effect.py