Skip to content

Commit 21b7dc4

Browse files
committed
Fix test cases
1 parent ac165e8 commit 21b7dc4

File tree

2 files changed

+34
-18
lines changed

2 files changed

+34
-18
lines changed

pandas/core/arrays/base.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -2511,8 +2511,9 @@ def _mode(self, dropna: bool = True) -> Self:
25112511
Sorted, if possible.
25122512
"""
25132513
# error: Incompatible return value type (got "Union[ExtensionArray,
2514-
# ndarray[Any, Any]]", expected "Self")
2515-
return mode(self, dropna=dropna) # type: ignore[return-value]
2514+
# Tuple[np.ndarray, npt.NDArray[np.bool_]]", expected "Self")
2515+
result, _ = mode(self, dropna=dropna)
2516+
return result
25162517

25172518
def __array_ufunc__(self, ufunc: np.ufunc, method: str, *inputs, **kwargs):
25182519
if any(

pandas/tests/test_algos.py

+31-16
Original file line numberDiff line numberDiff line change
@@ -1831,7 +1831,8 @@ def test_pct_max_many_rows(self):
18311831
class TestMode:
18321832
def test_no_mode(self):
18331833
exp = Series([], dtype=np.float64, index=Index([], dtype=int))
1834-
tm.assert_numpy_array_equal(algos.mode(np.array([])), exp.values)
1834+
result, _ = algos.mode(np.array([]))
1835+
tm.assert_numpy_array_equal(result, exp.values)
18351836

18361837
def test_mode_single(self, any_real_numpy_dtype):
18371838
# GH 15714
@@ -1843,20 +1844,24 @@ def test_mode_single(self, any_real_numpy_dtype):
18431844

18441845
ser = Series(data_single, dtype=any_real_numpy_dtype)
18451846
exp = Series(exp_single, dtype=any_real_numpy_dtype)
1846-
tm.assert_numpy_array_equal(algos.mode(ser.values), exp.values)
1847+
result, _ = algos.mode(ser.values)
1848+
tm.assert_numpy_array_equal(result, exp.values)
18471849
tm.assert_series_equal(ser.mode(), exp)
18481850

18491851
ser = Series(data_multi, dtype=any_real_numpy_dtype)
18501852
exp = Series(exp_multi, dtype=any_real_numpy_dtype)
1851-
tm.assert_numpy_array_equal(algos.mode(ser.values), exp.values)
1853+
result, _ = algos.mode(ser.values)
1854+
tm.assert_numpy_array_equal(result, exp.values)
18521855
tm.assert_series_equal(ser.mode(), exp)
18531856

18541857
def test_mode_obj_int(self):
18551858
exp = Series([1], dtype=int)
1856-
tm.assert_numpy_array_equal(algos.mode(exp.values), exp.values)
1859+
result, _ = algos.mode(exp.values)
1860+
tm.assert_numpy_array_equal(result, exp.values)
18571861

18581862
exp = Series(["a", "b", "c"], dtype=object)
1859-
tm.assert_numpy_array_equal(algos.mode(exp.values), exp.values)
1863+
result, _ = algos.mode(exp.values)
1864+
tm.assert_numpy_array_equal(result, exp.values)
18601865

18611866
def test_number_mode(self, any_real_numpy_dtype):
18621867
exp_single = [1]
@@ -1867,12 +1872,14 @@ def test_number_mode(self, any_real_numpy_dtype):
18671872

18681873
ser = Series(data_single, dtype=any_real_numpy_dtype)
18691874
exp = Series(exp_single, dtype=any_real_numpy_dtype)
1870-
tm.assert_numpy_array_equal(algos.mode(ser.values), exp.values)
1875+
result, _ = algos.mode(ser.values)
1876+
tm.assert_numpy_array_equal(result, exp.values)
18711877
tm.assert_series_equal(ser.mode(), exp)
18721878

18731879
ser = Series(data_multi, dtype=any_real_numpy_dtype)
18741880
exp = Series(exp_multi, dtype=any_real_numpy_dtype)
1875-
tm.assert_numpy_array_equal(algos.mode(ser.values), exp.values)
1881+
result, _ = algos.mode(ser.values)
1882+
tm.assert_numpy_array_equal(result, exp.values)
18761883
tm.assert_series_equal(ser.mode(), exp)
18771884

18781885
def test_strobj_mode(self):
@@ -1881,7 +1888,8 @@ def test_strobj_mode(self):
18811888

18821889
ser = Series(data, dtype="c")
18831890
exp = Series(exp, dtype="c")
1884-
tm.assert_numpy_array_equal(algos.mode(ser.values), exp.values)
1891+
result, _ = algos.mode(ser.values)
1892+
tm.assert_numpy_array_equal(result, exp.values)
18851893
tm.assert_series_equal(ser.mode(), exp)
18861894

18871895
@pytest.mark.parametrize("dt", [str, object])
@@ -1891,10 +1899,11 @@ def test_strobj_multi_char(self, dt, using_infer_string):
18911899

18921900
ser = Series(data, dtype=dt)
18931901
exp = Series(exp, dtype=dt)
1902+
result, _ = algos.mode(ser.values)
18941903
if using_infer_string and dt is str:
1895-
tm.assert_extension_array_equal(algos.mode(ser.values), exp.values)
1904+
tm.assert_extension_array_equal(result, exp.values)
18961905
else:
1897-
tm.assert_numpy_array_equal(algos.mode(ser.values), exp.values)
1906+
tm.assert_numpy_array_equal(result, exp.values)
18981907
tm.assert_series_equal(ser.mode(), exp)
18991908

19001909
def test_datelike_mode(self):
@@ -1928,18 +1937,21 @@ def test_timedelta_mode(self):
19281937
def test_mixed_dtype(self):
19291938
exp = Series(["foo"], dtype=object)
19301939
ser = Series([1, "foo", "foo"])
1931-
tm.assert_numpy_array_equal(algos.mode(ser.values), exp.values)
1940+
result, _ = algos.mode(ser.values)
1941+
tm.assert_numpy_array_equal(result, exp.values)
19321942
tm.assert_series_equal(ser.mode(), exp)
19331943

19341944
def test_uint64_overflow(self):
19351945
exp = Series([2**63], dtype=np.uint64)
19361946
ser = Series([1, 2**63, 2**63], dtype=np.uint64)
1937-
tm.assert_numpy_array_equal(algos.mode(ser.values), exp.values)
1947+
result, _ = algos.mode(ser.values)
1948+
tm.assert_numpy_array_equal(result, exp.values)
19381949
tm.assert_series_equal(ser.mode(), exp)
19391950

19401951
exp = Series([1, 2**63], dtype=np.uint64)
19411952
ser = Series([1, 2**63], dtype=np.uint64)
1942-
tm.assert_numpy_array_equal(algos.mode(ser.values), exp.values)
1953+
result, _ = algos.mode(ser.values)
1954+
tm.assert_numpy_array_equal(result, exp.values)
19431955
tm.assert_series_equal(ser.mode(), exp)
19441956

19451957
def test_categorical(self):
@@ -1961,15 +1973,18 @@ def test_categorical(self):
19611973
def test_index(self):
19621974
idx = Index([1, 2, 3])
19631975
exp = Series([1, 2, 3], dtype=np.int64)
1964-
tm.assert_numpy_array_equal(algos.mode(idx), exp.values)
1976+
result, _ = algos.mode(idx)
1977+
tm.assert_numpy_array_equal(result, exp.values)
19651978

19661979
idx = Index([1, "a", "a"])
19671980
exp = Series(["a"], dtype=object)
1968-
tm.assert_numpy_array_equal(algos.mode(idx), exp.values)
1981+
result, _ = algos.mode(idx)
1982+
tm.assert_numpy_array_equal(result, exp.values)
19691983

19701984
idx = Index([1, 1, 2, 3, 3])
19711985
exp = Series([1, 3], dtype=np.int64)
1972-
tm.assert_numpy_array_equal(algos.mode(idx), exp.values)
1986+
result, _ = algos.mode(idx)
1987+
tm.assert_numpy_array_equal(result, exp.values)
19731988

19741989
idx = Index(
19751990
["1 day", "1 day", "-1 day", "-1 day 2 min", "2 min", "2 min"],

0 commit comments

Comments
 (0)