Skip to content

Commit b25ae18

Browse files
committed
wip
1 parent a98c68c commit b25ae18

File tree

7 files changed

+18
-12
lines changed

7 files changed

+18
-12
lines changed

check_completeness.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@
6161
"Sequence",
6262
"column_object",
6363
"dataframe_object",
64-
"group_by_object",
64+
"groupby_object",
6565
"DType",
6666
}
6767
spec = [i for i in dataframe_api.__dir__() if i not in exclude and not i.startswith("_")]

dataframe_api_compat/pandas_standard/pandas_standard.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -517,7 +517,7 @@ def group_by(self, keys: Sequence[str]) -> PandasGroupBy:
517517
if isinstance(keys, str):
518518
raise TypeError("Expected sequence of strings, got: str")
519519
for key in keys:
520-
if key not in self.get_column_names():
520+
if key not in self.column_names:
521521
raise KeyError(f"key {key} not present in DataFrame's columns")
522522
return PandasGroupBy(self.dataframe, keys, api_version=self._api_version)
523523

@@ -605,12 +605,16 @@ def rename_columns(self, mapping: Mapping[str, str]) -> PandasDataFrame:
605605
self.dataframe.rename(columns=mapping), api_version=self._api_version
606606
)
607607

608-
def get_column_names(self) -> list[str]:
608+
def get_column_names(self) -> list[str]: # pragma: no cover
609609
# DO NOT REMOVE
610610
# This one is used in upstream tests - even if deprecated,
611611
# just leave it in for backwards compatibility
612612
return self.dataframe.columns.tolist()
613613

614+
@property
615+
def column_names(self) -> list[str]:
616+
return self.dataframe.columns.tolist()
617+
614618
def sorted_indices(
615619
self,
616620
keys: Sequence[str] | None = None,

dataframe_api_compat/polars_standard/polars_standard.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -939,12 +939,16 @@ def rename_columns(self, mapping: Mapping[str, str]) -> PolarsDataFrame:
939939
self.dataframe.rename(dict(mapping)), api_version=self._api_version
940940
)
941941

942-
def get_column_names(self) -> list[str]:
942+
def get_column_names(self) -> list[str]: # pragma: no cover
943943
# DO NOT REMOVE
944944
# This one is used in upstream tests - even if deprecated,
945945
# just leave it in for backwards compatibility
946946
return self.dataframe.columns
947947

948+
@property
949+
def column_names(self) -> list[str]:
950+
return self.dataframe.columns
951+
948952
def __eq__( # type: ignore[override]
949953
self,
950954
other: Any,
@@ -1033,9 +1037,7 @@ def __floordiv__(self, other: Any) -> PolarsDataFrame:
10331037

10341038
def __pow__(self, other: Any) -> PolarsDataFrame:
10351039
original_type = self.dataframe.schema
1036-
ret = self.dataframe.select(
1037-
[pl.col(col).pow(other) for col in self.get_column_names()]
1038-
)
1040+
ret = self.dataframe.select([pl.col(col).pow(other) for col in self.column_names])
10391041
for column in self.dataframe.columns:
10401042
if _is_integer_dtype(original_type[column]) and isinstance(other, int):
10411043
if other < 0: # pragma: no cover (todo)

t.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ def my_dataframe_agnostic_function(df):
1414
mask = df.get_column_by_name("species") != "setosa"
1515
df = df.filter(mask)
1616

17-
for column_name in df.get_column_names():
17+
for column_name in df.column_names:
1818
if column_name == "species":
1919
continue
2020
new_column = df.get_column_by_name(column_name)

tests/dataframe/get_column_names_test.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@
55

66
def test_get_column_names(library: str) -> None:
77
df = integer_dataframe_1(library)
8-
result = df.get_column_names()
8+
result = df.column_names
99
assert list(result) == ["a", "b"]

tests/namespace/column_names_test.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,15 @@ def test_column_names(library: str, request: pytest.FixtureRequest) -> None:
1313
ser = df.get_column_by_name("a")
1414
namespace = ser.__column_namespace__()
1515
result = namespace.dataframe_from_dict({"result": ser})
16-
assert result.get_column_names() == ["result"]
16+
assert result.column_names == ["result"]
1717
assert result.get_column_by_name("result").name == "result"
1818

1919
# named column
2020
ser = namespace.column_from_sequence(
2121
[1, 2, 3], dtype=namespace.Float64(), name="result"
2222
)
2323
result = namespace.dataframe_from_dict({"result": ser})
24-
assert result.get_column_names() == ["result"]
24+
assert result.column_names == ["result"]
2525
assert result.get_column_by_name("result").name == "result"
2626

2727
# named column (different name)

tests/namespace/is_dtype_test.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ def test_is_dtype(library: str, dtype: str, expected: list[str]) -> None:
2323
namespace = df.__dataframe_namespace__()
2424
result = [
2525
i
26-
for i in df.get_column_names()
26+
for i in df.column_names
2727
if namespace.is_dtype(df.get_column_by_name(i).dtype, dtype)
2828
]
2929
assert result == expected

0 commit comments

Comments
 (0)