コード例 #1
0
ファイル: groupby.py プロジェクト: nataliaking/ibis
 def projection(self, exprs):
     w = self._get_window()
     windowed_exprs = []
     for expr in exprs:
         expr = L.windowize_function(expr, w=w)
         windowed_exprs.append(expr)
     return self.table.projection(windowed_exprs)
コード例 #2
0
 def projection(self, exprs):
     w = self._get_window()
     windowed_exprs = []
     for expr in exprs:
         expr = L.windowize_function(expr, w=w)
         windowed_exprs.append(expr)
     return self.table.projection(windowed_exprs)
コード例 #3
0
ファイル: groupby.py プロジェクト: raincoatrun/ibis
 def projection(self, exprs):
     """
     Like mutate, but do not include existing table columns
     """
     w = self._get_window()
     windowed_exprs = []
     exprs = self.table._resolve(exprs)
     for expr in exprs:
         expr = L.windowize_function(expr, w=w)
         windowed_exprs.append(expr)
     return self.table.projection(windowed_exprs)
コード例 #4
0
ファイル: groupby.py プロジェクト: wangxiong2015/ibis
 def projection(self, exprs):
     """
     Like mutate, but do not include existing table columns
     """
     w = self._get_window()
     windowed_exprs = []
     exprs = self.table._resolve(exprs)
     for expr in exprs:
         expr = L.windowize_function(expr, w=w)
         windowed_exprs.append(expr)
     return self.table.projection(windowed_exprs)
コード例 #5
0
ファイル: alchemy.py プロジェクト: reshma-katkar/ibis
def _cumulative_to_window(translator, expr, window):
    win = W.cumulative_window()
    win = win.group_by(window._group_by).order_by(window._order_by)

    op = expr.op()

    klass = _cumulative_to_reduction[type(op)]
    new_op = klass(*op.args)
    new_expr = expr._factory(new_op, name=expr._name)

    if type(new_op) in translator._rewrites:
        new_expr = translator._rewrites[type(new_op)](new_expr)

    return L.windowize_function(new_expr, win)
コード例 #6
0
    def projection(self, exprs):
        """Project new columns out of the grouped table.

        See Also
        --------
        ibis.expr.groupby.GroupedTableExpr.mutate
        """
        w = self._get_window()
        windowed_exprs = []
        exprs = self.table._resolve(exprs)
        for expr in exprs:
            expr = L.windowize_function(expr, w=w)
            windowed_exprs.append(expr)
        return self.table.projection(windowed_exprs)
コード例 #7
0
ファイル: groupby.py プロジェクト: ibis-project/ibis
    def projection(self, exprs):
        """Project new columns out of the grouped table.

        See Also
        --------
        ibis.expr.groupby.GroupedTable.mutate
        """
        w = self._get_window()
        windowed_exprs = []
        for expr in util.promote_list(exprs):
            expr = self.table._ensure_expr(expr)
            expr = L.windowize_function(expr, w=w)
            windowed_exprs.append(expr)
        return self.table.projection(windowed_exprs)
コード例 #8
0
ファイル: alchemy.py プロジェクト: cloudera/ibis
def _cumulative_to_window(translator, expr, window):
    win = W.cumulative_window()
    win = win.group_by(window._group_by).order_by(window._order_by)

    op = expr.op()

    klass = _cumulative_to_reduction[type(op)]
    new_op = klass(*op.args)
    new_expr = expr._factory(new_op, name=expr._name)

    if type(new_op) in translator._rewrites:
        new_expr = translator._rewrites[type(new_op)](new_expr)

    return L.windowize_function(new_expr, win)
コード例 #9
0
def _cumulative_to_window(expr, window):
    win = ibis.cumulative_window()
    win = (win.group_by(window._group_by)
           .order_by(window._order_by))

    op = expr.op()

    klass = _cumulative_to_reduction[type(op)]
    new_op = klass(*op.args)
    new_expr = expr._factory(new_op, name=expr._name)

    if type(new_op) in _expr_rewrites:
        new_expr = _expr_rewrites[type(new_op)](new_expr)

    new_expr = L.windowize_function(new_expr, win)
    return new_expr
コード例 #10
0
def cumulative_to_window(translator, expr, window):
    win = ibis.cumulative_window()
    win = win.group_by(window._group_by).order_by(window._order_by)

    op = expr.op()

    klass = _cumulative_to_reduction[type(op)]
    new_op = klass(*op.args)
    new_expr = new_op.to_expr()
    if expr.has_name():
        new_expr = new_expr.name(expr.get_name())

    if type(new_op) in translator._rewrites:
        new_expr = translator._rewrites[type(new_op)](new_expr)

    new_expr = L.windowize_function(new_expr, win)
    return new_expr