Skip to content

Commit 8e06c01

Browse files
authored
perf: remove some lambdas from _dask backend (#765)
1 parent 70cd946 commit 8e06c01

File tree

1 file changed

+11
-17
lines changed

1 file changed

+11
-17
lines changed

narwhals/_dask/dataframe.py

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -153,14 +153,9 @@ def unique(
153153
if keep == "none":
154154
subset = subset or self.columns
155155
token = generate_unique_token(n_bytes=8, columns=subset)
156-
unique = (
157-
native_frame.groupby(subset)
158-
.size()
159-
.rename(token)
160-
.loc[lambda t: t == 1]
161-
.reset_index()
162-
.drop(columns=token)
163-
)
156+
ser = native_frame.groupby(subset).size().rename(token)
157+
ser = ser.loc[ser == 1]
158+
unique = ser.reset_index().drop(columns=token)
164159
result = native_frame.merge(unique, on=subset, how="inner")
165160
else:
166161
mapped_keep = {"any": "first"}.get(keep, keep)
@@ -221,16 +216,15 @@ def join(
221216
)
222217
.drop_duplicates()
223218
)
219+
df = self._native_dataframe.merge(
220+
other_native,
221+
how="outer",
222+
indicator=indicator_token,
223+
left_on=left_on,
224+
right_on=left_on,
225+
)
224226
return self._from_native_dataframe(
225-
self._native_dataframe.merge(
226-
other_native,
227-
how="outer",
228-
indicator=indicator_token,
229-
left_on=left_on,
230-
right_on=left_on,
231-
)
232-
.loc[lambda t: t[indicator_token] == "left_only"]
233-
.drop(columns=[indicator_token])
227+
df.loc[df[indicator_token] == "left_only"].drop(columns=[indicator_token])
234228
)
235229

236230
if how == "semi":

0 commit comments

Comments
 (0)