From 23ec222a85dbb9d10b9c090ec215854c4d3d89c6 Mon Sep 17 00:00:00 2001 From: Marco Gorelli <33491632+MarcoGorelli@users.noreply.github.com> Date: Sat, 16 Mar 2024 16:43:12 +0000 Subject: [PATCH] fixup pandas as well --- narwhals/pandas_like/dataframe.py | 4 ++-- narwhals/pandas_like/namespace.py | 2 +- narwhals/pandas_like/utils.py | 11 +++++++---- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/narwhals/pandas_like/dataframe.py b/narwhals/pandas_like/dataframe.py index 036261ca0..689d00b41 100644 --- a/narwhals/pandas_like/dataframe.py +++ b/narwhals/pandas_like/dataframe.py @@ -99,9 +99,9 @@ def filter( self, *predicates: IntoPandasExpr | Iterable[IntoPandasExpr], ) -> Self: - from narwhals.pandas_like.namespace import Namespace + from narwhals.pandas_like.namespace import PandasNamespace - plx = Namespace(self._implementation) + plx = PandasNamespace(self._implementation) expr = plx.all_horizontal(*predicates) # Safety: all_horizontal's expression only returns a single column. mask = expr._call(self)[0] diff --git a/narwhals/pandas_like/namespace.py b/narwhals/pandas_like/namespace.py index 5fb009ae2..bc418f7bd 100644 --- a/narwhals/pandas_like/namespace.py +++ b/narwhals/pandas_like/namespace.py @@ -19,7 +19,7 @@ from narwhals.pandas_like.typing import IntoPandasExpr -class Namespace: +class PandasNamespace: Int64 = dtypes.Int64 Int32 = dtypes.Int32 Int16 = dtypes.Int16 diff --git a/narwhals/pandas_like/utils.py b/narwhals/pandas_like/utils.py index bf7ffd1bb..17f59971c 100644 --- a/narwhals/pandas_like/utils.py +++ b/narwhals/pandas_like/utils.py @@ -97,10 +97,13 @@ def parse_into_exprs( def parse_into_expr(implementation: str, into_expr: IntoPandasExpr) -> PandasExpr: from narwhals.expression import Expr - from narwhals.pandas_like.namespace import Namespace + from narwhals.pandas_like.expr import PandasExpr + from narwhals.pandas_like.namespace import PandasNamespace - plx = Namespace(implementation=implementation) + plx = PandasNamespace(implementation=implementation) + if isinstance(into_expr, PandasExpr): + return into_expr if isinstance(into_expr, Expr): return into_expr._call(plx) if isinstance(into_expr, str): @@ -141,10 +144,10 @@ def evaluate_into_exprs( def register_expression_call(expr: ExprT, attr: str, *args: Any, **kwargs: Any) -> ExprT: from narwhals.pandas_like.expr import PandasExpr - from narwhals.pandas_like.namespace import Namespace + from narwhals.pandas_like.namespace import PandasNamespace from narwhals.pandas_like.series import PandasSeries - plx = Namespace(implementation=expr._implementation) + plx = PandasNamespace(implementation=expr._implementation) def func(df: PandasDataFrame) -> list[PandasSeries]: out: list[PandasSeries] = []