@@ -96,6 +96,11 @@ def MEDS_eval_expr(self) -> pl.Expr:
9696 >>> expr = cfg.MEDS_eval_expr() # doctest: +NORMALIZE_WHITESPACE
9797 >>> print(expr) # doctest: +NORMALIZE_WHITESPACE
9898 col("code").str.contains([String(^foo.*)])
99+ >>> cfg = PlainPredicateConfig(code={'regex': '^foo.*'}, value_min=120)
100+ >>> expr = cfg.MEDS_eval_expr() # doctest: +NORMALIZE_WHITESPACE
101+ >>> print(expr) # doctest: +NORMALIZE_WHITESPACE
102+ col("code").str.contains([String(^foo.*)]).all_horizontal([[(col("numeric_value")) >
103+ (dyn int: 120)]])
99104 >>> cfg = PlainPredicateConfig(code={'any': ['foo', 'bar']})
100105 >>> expr = cfg.MEDS_eval_expr() # doctest: +NORMALIZE_WHITESPACE
101106 >>> print(expr) # doctest: +NORMALIZE_WHITESPACE
@@ -134,16 +139,16 @@ def MEDS_eval_expr(self) -> pl.Expr:
134139 else :
135140 criteria .append (pl .col ("code" ) == self .code )
136141
137- if self .value_min is not None :
138- if self .value_min_inclusive :
139- criteria .append (pl .col ("numeric_value" ) >= self .value_min )
140- else :
141- criteria .append (pl .col ("numeric_value" ) > self .value_min )
142- if self .value_max is not None :
143- if self .value_max_inclusive :
144- criteria .append (pl .col ("numeric_value" ) <= self .value_max )
145- else :
146- criteria .append (pl .col ("numeric_value" ) < self .value_max )
142+ if self .value_min is not None :
143+ if self .value_min_inclusive :
144+ criteria .append (pl .col ("numeric_value" ) >= self .value_min )
145+ else :
146+ criteria .append (pl .col ("numeric_value" ) > self .value_min )
147+ if self .value_max is not None :
148+ if self .value_max_inclusive :
149+ criteria .append (pl .col ("numeric_value" ) <= self .value_max )
150+ else :
151+ criteria .append (pl .col ("numeric_value" ) < self .value_max )
147152
148153 if self .other_cols :
149154 criteria .extend ([pl .col (col ) == value for col , value in self .other_cols .items ()])
0 commit comments