Ejemplo n.º 1
0
 def handle_filtering(
     self,
     ibis_table: TableExpr,
     where_expr: Tree,
     internal_transformer: InternalTransformer,
 ):
     """
     Returns frame with appropriately selected and named columns
     :param ibis_table: Ibis expression table to manipulate
     :param where_expr: Syntax tree containing where clause
     :param internal_transformer: Transformer to transform the where clauses
     :return: Filtered TableExpr
     """
     if where_expr is not None:
         where_expression: WhereExpression = internal_transformer.transform(
             where_expr)
         return ibis_table.filter(where_expression.value.get_value())
     return ibis_table
Ejemplo n.º 2
0
 def __call__(self, expr: ir.TableExpr) -> ir.TableExpr:
     scope = {X: expr}
     return expr.filter(
         [predicate.resolve(expr, scope) for predicate in self.predicates])