NVIDIA / NVIDIA/cudf

[FEA] Support `polars.Expr.str.split` in `cudf-polars`

Open
#19,026 0 comments 0 reactions 0 assignees View on GitHub
0 - Blocked cudf-polars feature request Python
Dominant language
C++
Stars
9.8k
Forks
1.1k
Avg merge
3d 6m
Merged PRs (30d)
278

Description

**Is your feature request related to a problem? Please describe.**
Today on `branch-25.08`, we lack support for [polars.Expr.str.split](https://docs.pola.rs/api/python/stable/reference/expressions/api/polars.Expr.str.split.html). Running the example from the docs yields:
```
import polars as pl
engine = pl.GPUEngine(raise_on_fail=True)

df = pl.DataFrame({"s": ["foo bar", "foo_bar", "foo_bar_baz"]}).lazy()
df = df.with_columns(
pl.col("s").str.split(by="_").alias("split"),
pl.col("s").str.split(by="_", inclusive=True).alias("split_inclusive"),
)
res = df.collect(engine=engine)
print(res)
```

```
NotImplementedError('String function ')
```

**Describe the solution you'd like**
I'd like the above code to be able to execute using the polars GPU backend. There's some string splitting functionality in libcudf but in most cases it returns a table with the split elements. In addition, since this API returns a `list[str]` dtype, it's blocked on list dtypes generally in `cudf-polars`.

**Describe alternatives you've considered**
N/A

**Additional context**
https://github.com/rapidsai/cudf/issues/16480

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.