|
31 | 31 | from narwhals._polars.dataframe import Method |
32 | 32 | from narwhals._polars.dataframe import PolarsDataFrame |
33 | 33 | from narwhals._polars.dataframe import PolarsLazyFrame |
| 34 | + from narwhals._polars.typing import FrameT |
34 | 35 | from narwhals.schema import Schema |
35 | 36 | from narwhals.typing import Into1DArray |
36 | 37 | from narwhals.typing import TimeUnit |
@@ -130,35 +131,17 @@ def len(self: Self) -> PolarsExpr: |
130 | 131 | pl.len(), version=self._version, backend_version=self._backend_version |
131 | 132 | ) |
132 | 133 |
|
133 | | - @overload |
134 | | - def concat( |
135 | | - self: Self, |
136 | | - items: Iterable[PolarsDataFrame], |
137 | | - *, |
138 | | - how: Literal["vertical", "horizontal", "diagonal"], |
139 | | - ) -> PolarsDataFrame: ... |
140 | | - |
141 | | - @overload |
142 | 134 | def concat( |
143 | 135 | self: Self, |
144 | | - items: Iterable[PolarsLazyFrame], |
145 | | - *, |
146 | | - how: Literal["vertical", "horizontal", "diagonal"], |
147 | | - ) -> PolarsLazyFrame: ... |
148 | | - |
149 | | - def concat( |
150 | | - self: Self, |
151 | | - items: Iterable[PolarsDataFrame] | Iterable[PolarsLazyFrame], |
| 136 | + items: Iterable[FrameT], |
152 | 137 | *, |
153 | 138 | how: Literal["vertical", "horizontal", "diagonal"], |
154 | 139 | ) -> PolarsDataFrame | PolarsLazyFrame: |
155 | | - from narwhals._polars.dataframe import PolarsDataFrame |
156 | 140 | from narwhals._polars.dataframe import PolarsLazyFrame |
157 | 141 |
|
158 | | - dfs: Iterable[Any] = (item.native for item in items) |
159 | | - result = pl.concat(dfs, how=how) |
| 142 | + result = pl.concat((item.native for item in items), how=how) |
160 | 143 | if isinstance(result, pl.DataFrame): |
161 | | - return PolarsDataFrame( |
| 144 | + return self._dataframe( |
162 | 145 | result, backend_version=self._backend_version, version=self._version |
163 | 146 | ) |
164 | 147 | return PolarsLazyFrame( |
|
0 commit comments