diff --git a/narwhals/_dask/dataframe.py b/narwhals/_dask/dataframe.py index 34849c133..0861c122f 100644 --- a/narwhals/_dask/dataframe.py +++ b/narwhals/_dask/dataframe.py @@ -55,6 +55,10 @@ def collect(self) -> Any: backend_version=parse_version(get_pandas().__version__), ) + @property + def columns(self) -> list[str]: + return self._native_dataframe.columns.tolist() # type: ignore[no-any-return] + def lazy(self) -> Self: return self diff --git a/tests/dask_test.py b/tests/dask_test.py index 4e3b347d8..110c88adb 100644 --- a/tests/dask_test.py +++ b/tests/dask_test.py @@ -271,6 +271,16 @@ def test_str_to_lowercase( compare_dicts(result_frame, expected) +def test_columns() -> None: + import dask.dataframe as dd + + dfdd = dd.from_pandas(pd.DataFrame({"a": [1, 2, 3], "b": ["cat", "bat", "mat"]})) + df = nw.from_native(dfdd) + + result = df.columns + assert result == ["a", "b"] + + def test_select() -> None: import dask.dataframe as dd