Skip to content

Commit 667c947

Browse files
jorisvandenbosschejreback
authored andcommitted
CLN: remove unused categories/ordered handling in astype (#28646)
1 parent 31b2dbe commit 667c947

File tree

3 files changed

+8
-27
lines changed

3 files changed

+8
-27
lines changed

pandas/core/generic.py

+4-10
Original file line numberDiff line numberDiff line change
@@ -5772,7 +5772,7 @@ def _to_dict_of_blocks(self, copy=True):
57725772
for k, v, in self._data.to_dict(copy=copy).items()
57735773
}
57745774

5775-
def astype(self, dtype, copy=True, errors="raise", **kwargs):
5775+
def astype(self, dtype, copy=True, errors="raise"):
57765776
"""
57775777
Cast a pandas object to a specified dtype ``dtype``.
57785778
@@ -5795,8 +5795,6 @@ def astype(self, dtype, copy=True, errors="raise", **kwargs):
57955795
57965796
.. versionadded:: 0.20.0
57975797
5798-
**kwargs : keyword arguments to pass on to the constructor
5799-
58005798
Returns
58015799
-------
58025800
casted : same type as caller
@@ -5882,7 +5880,7 @@ def astype(self, dtype, copy=True, errors="raise", **kwargs):
58825880
"the key in Series dtype mappings."
58835881
)
58845882
new_type = dtype[self.name]
5885-
return self.astype(new_type, copy, errors, **kwargs)
5883+
return self.astype(new_type, copy, errors)
58865884

58875885
for col_name in dtype.keys():
58885886
if col_name not in self:
@@ -5894,9 +5892,7 @@ def astype(self, dtype, copy=True, errors="raise", **kwargs):
58945892
for col_name, col in self.items():
58955893
if col_name in dtype:
58965894
results.append(
5897-
col.astype(
5898-
dtype=dtype[col_name], copy=copy, errors=errors, **kwargs
5899-
)
5895+
col.astype(dtype=dtype[col_name], copy=copy, errors=errors)
59005896
)
59015897
else:
59025898
results.append(results.append(col.copy() if copy else col))
@@ -5911,9 +5907,7 @@ def astype(self, dtype, copy=True, errors="raise", **kwargs):
59115907

59125908
else:
59135909
# else, only a single dtype is given
5914-
new_data = self._data.astype(
5915-
dtype=dtype, copy=copy, errors=errors, **kwargs
5916-
)
5910+
new_data = self._data.astype(dtype=dtype, copy=copy, errors=errors)
59175911
return self._constructor(new_data).__finalize__(self)
59185912

59195913
# GH 19920: retain column metadata after concat

pandas/core/internals/blocks.py

+1-13
Original file line numberDiff line numberDiff line change
@@ -574,18 +574,6 @@ def _astype(self, dtype, copy=False, errors="raise", **kwargs):
574574
# may need to convert to categorical
575575
if self.is_categorical_astype(dtype):
576576

577-
# deprecated 17636
578-
for deprecated_arg in ("categories", "ordered"):
579-
if deprecated_arg in kwargs:
580-
raise ValueError(
581-
"Got an unexpected argument: {}".format(deprecated_arg)
582-
)
583-
584-
categories = kwargs.get("categories", None)
585-
ordered = kwargs.get("ordered", None)
586-
if com.any_not_none(categories, ordered):
587-
dtype = CategoricalDtype(categories, ordered)
588-
589577
if is_categorical_dtype(self.values):
590578
# GH 10696/18593: update an existing categorical efficiently
591579
return self.make_block(self.values.astype(dtype, copy=copy))
@@ -621,7 +609,7 @@ def _astype(self, dtype, copy=False, errors="raise", **kwargs):
621609
# _astype_nansafe works fine with 1-d only
622610
vals1d = values.ravel()
623611
try:
624-
values = astype_nansafe(vals1d, dtype, copy=True, **kwargs)
612+
values = astype_nansafe(vals1d, dtype, copy=True)
625613
except (ValueError, TypeError):
626614
# e.g. astype_nansafe can fail on object-dtype of strings
627615
# trying to convert to float

pandas/tests/series/test_dtypes.py

+3-4
Original file line numberDiff line numberDiff line change
@@ -228,11 +228,10 @@ def test_astype_dict_like(self, dtype_class):
228228
with pytest.raises(KeyError, match=msg):
229229
s.astype(dt5)
230230

231-
def test_astype_categories_deprecation_raises(self):
232-
233-
# deprecated 17636
231+
def test_astype_categories_raises(self):
232+
# deprecated 17636, removed in GH-27141
234233
s = Series(["a", "b", "a"])
235-
with pytest.raises(ValueError, match="Got an unexpected"):
234+
with pytest.raises(TypeError, match="got an unexpected"):
236235
s.astype("category", categories=["a", "b"], ordered=True)
237236

238237
@pytest.mark.parametrize(

0 commit comments

Comments
 (0)