Skip to content

Commit 879d2fb

Browse files
authored
CLN: remove unused arg from Index._get_unique_index (#39689)
1 parent 83479e1 commit 879d2fb

File tree

4 files changed

+13
-38
lines changed

4 files changed

+13
-38
lines changed

pandas/core/indexes/base.py

+3-24
Original file line numberDiff line numberDiff line change
@@ -2620,36 +2620,15 @@ def duplicated(self, keep="first"):
26202620
return np.zeros(len(self), dtype=bool)
26212621
return super().duplicated(keep=keep)
26222622

2623-
def _get_unique_index(self, dropna: bool = False):
2623+
def _get_unique_index(self: _IndexT) -> _IndexT:
26242624
"""
26252625
Returns an index containing unique values.
26262626
2627-
Parameters
2628-
----------
2629-
dropna : bool, default False
2630-
If True, NaN values are dropped.
2631-
26322627
Returns
26332628
-------
2634-
uniques : index
2629+
Index
26352630
"""
2636-
if self.is_unique and not dropna:
2637-
return self
2638-
2639-
if not self.is_unique:
2640-
values = self.unique()
2641-
if not isinstance(self, ABCMultiIndex):
2642-
# extract an array to pass to _shallow_copy
2643-
values = values._data
2644-
else:
2645-
values = self._values
2646-
2647-
if dropna and not isinstance(self, ABCMultiIndex):
2648-
# isna not defined for MultiIndex
2649-
if self.hasnans:
2650-
values = values[~isna(values)]
2651-
2652-
return self._shallow_copy(values)
2631+
return self.unique()
26532632

26542633
# --------------------------------------------------------------------
26552634
# Arithmetic & Logical Methods

pandas/core/indexes/extension.py

+2-4
Original file line numberDiff line numberDiff line change
@@ -263,13 +263,11 @@ def insert(self, loc: int, item):
263263
# ExtensionIndex subclasses must override Index.insert
264264
raise AbstractMethodError(self)
265265

266-
def _get_unique_index(self, dropna=False):
267-
if self.is_unique and not dropna:
266+
def _get_unique_index(self):
267+
if self.is_unique:
268268
return self
269269

270270
result = self._data.unique()
271-
if dropna and self.hasnans:
272-
result = result[~result.isna()]
273271
return self._shallow_copy(result)
274272

275273
@doc(Index.map)

pandas/tests/indexes/multi/test_duplicates.py

+2-3
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,11 @@ def test_unique_level(idx, level):
7171
tm.assert_index_equal(result, expected)
7272

7373

74-
@pytest.mark.parametrize("dropna", [True, False])
75-
def test_get_unique_index(idx, dropna):
74+
def test_get_unique_index(idx):
7675
mi = idx[[0, 1, 0, 1, 1, 0, 0]]
7776
expected = mi._shallow_copy(mi[[0, 1]])
7877

79-
result = mi._get_unique_index(dropna=dropna)
78+
result = mi._get_unique_index()
8079
assert result.unique
8180
tm.assert_index_equal(result, expected)
8281

pandas/tests/indexes/test_common.py

+6-7
Original file line numberDiff line numberDiff line change
@@ -158,9 +158,8 @@ def test_get_unique_index(self, index_flat):
158158
except NotImplementedError:
159159
pass
160160

161-
for dropna in [False, True]:
162-
result = idx._get_unique_index(dropna=dropna)
163-
tm.assert_index_equal(result, idx_unique)
161+
result = idx._get_unique_index()
162+
tm.assert_index_equal(result, idx_unique)
164163

165164
# nans:
166165
if not index._can_hold_na:
@@ -188,10 +187,10 @@ def test_get_unique_index(self, index_flat):
188187
assert idx_nan.dtype == index.dtype
189188
assert idx_unique_nan.dtype == index.dtype
190189

191-
for dropna, expected in zip([False, True], [idx_unique_nan, idx_unique]):
192-
for i in [idx_nan, idx_unique_nan]:
193-
result = i._get_unique_index(dropna=dropna)
194-
tm.assert_index_equal(result, expected)
190+
expected = idx_unique_nan
191+
for i in [idx_nan, idx_unique_nan]:
192+
result = i._get_unique_index()
193+
tm.assert_index_equal(result, expected)
195194

196195
def test_searchsorted_monotonic(self, index_flat):
197196
# GH17271

0 commit comments

Comments
 (0)