Skip to content

Commit a7dd3ea

Browse files
authored
REF: test_reindex_like (#33150)
1 parent aa71c21 commit a7dd3ea

File tree

5 files changed

+86
-56
lines changed

5 files changed

+86
-56
lines changed

pandas/tests/frame/indexing/test_indexing.py

-16
Original file line numberDiff line numberDiff line change
@@ -1616,11 +1616,6 @@ def test_reindex_methods(self, method, expected_values):
16161616
actual = df.reindex(target, method=method)
16171617
tm.assert_frame_equal(expected, actual)
16181618

1619-
actual = df.reindex_like(df, method=method, tolerance=0)
1620-
tm.assert_frame_equal(df, actual)
1621-
actual = df.reindex_like(df, method=method, tolerance=[0, 0, 0, 0])
1622-
tm.assert_frame_equal(df, actual)
1623-
16241619
actual = df.reindex(target, method=method, tolerance=1)
16251620
tm.assert_frame_equal(expected, actual)
16261621
actual = df.reindex(target, method=method, tolerance=[1, 1, 1, 1])
@@ -1641,17 +1636,6 @@ def test_reindex_methods(self, method, expected_values):
16411636
actual = df[::-1].reindex(target, method=switched_method)
16421637
tm.assert_frame_equal(expected, actual)
16431638

1644-
def test_reindex_subclass(self):
1645-
# https://github.com/pandas-dev/pandas/issues/31925
1646-
class MyDataFrame(DataFrame):
1647-
pass
1648-
1649-
expected = DataFrame()
1650-
df = MyDataFrame()
1651-
result = df.reindex_like(expected)
1652-
1653-
tm.assert_frame_equal(result, expected)
1654-
16551639
def test_reindex_methods_nearest_special(self):
16561640
df = pd.DataFrame({"x": list(range(5))})
16571641
target = np.array([-0.1, 0.9, 1.1, 1.5])
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
import numpy as np
2+
import pytest
3+
4+
from pandas import DataFrame
5+
import pandas._testing as tm
6+
7+
8+
class TestDataFrameReindexLike:
9+
def test_reindex_like(self, float_frame):
10+
other = float_frame.reindex(index=float_frame.index[:10], columns=["C", "B"])
11+
12+
tm.assert_frame_equal(other, float_frame.reindex_like(other))
13+
14+
@pytest.mark.parametrize(
15+
"method,expected_values",
16+
[
17+
("nearest", [0, 1, 1, 2]),
18+
("pad", [np.nan, 0, 1, 1]),
19+
("backfill", [0, 1, 2, 2]),
20+
],
21+
)
22+
def test_reindex_like_methods(self, method, expected_values):
23+
df = DataFrame({"x": list(range(5))})
24+
25+
result = df.reindex_like(df, method=method, tolerance=0)
26+
tm.assert_frame_equal(df, result)
27+
result = df.reindex_like(df, method=method, tolerance=[0, 0, 0, 0])
28+
tm.assert_frame_equal(df, result)
29+
30+
def test_reindex_like_subclass(self):
31+
# https://github.com/pandas-dev/pandas/issues/31925
32+
class MyDataFrame(DataFrame):
33+
pass
34+
35+
expected = DataFrame()
36+
df = MyDataFrame()
37+
result = df.reindex_like(expected)
38+
39+
tm.assert_frame_equal(result, expected)

pandas/tests/frame/test_axis_select_reindex.py

-5
Original file line numberDiff line numberDiff line change
@@ -155,11 +155,6 @@ def test_reindex_int(self, int_frame):
155155
smaller = int_frame.reindex(columns=["A", "B"])
156156
assert smaller["A"].dtype == np.int64
157157

158-
def test_reindex_like(self, float_frame):
159-
other = float_frame.reindex(index=float_frame.index[:10], columns=["C", "B"])
160-
161-
tm.assert_frame_equal(other, float_frame.reindex_like(other))
162-
163158
def test_reindex_columns(self, float_frame):
164159
new_frame = float_frame.reindex(columns=["A", "B", "E"])
165160

pandas/tests/series/indexing/test_alter_index.py

+6-35
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
from datetime import datetime
2-
31
import numpy as np
42
import pytest
53

@@ -149,25 +147,17 @@ def test_reindex_pad():
149147
def test_reindex_nearest():
150148
s = Series(np.arange(10, dtype="int64"))
151149
target = [0.1, 0.9, 1.5, 2.0]
152-
actual = s.reindex(target, method="nearest")
150+
result = s.reindex(target, method="nearest")
153151
expected = Series(np.around(target).astype("int64"), target)
154-
tm.assert_series_equal(expected, actual)
155-
156-
actual = s.reindex_like(actual, method="nearest")
157-
tm.assert_series_equal(expected, actual)
158-
159-
actual = s.reindex_like(actual, method="nearest", tolerance=1)
160-
tm.assert_series_equal(expected, actual)
161-
actual = s.reindex_like(actual, method="nearest", tolerance=[1, 2, 3, 4])
162-
tm.assert_series_equal(expected, actual)
152+
tm.assert_series_equal(expected, result)
163153

164-
actual = s.reindex(target, method="nearest", tolerance=0.2)
154+
result = s.reindex(target, method="nearest", tolerance=0.2)
165155
expected = Series([0, 1, np.nan, 2], target)
166-
tm.assert_series_equal(expected, actual)
156+
tm.assert_series_equal(expected, result)
167157

168-
actual = s.reindex(target, method="nearest", tolerance=[0.3, 0.01, 0.4, 3])
158+
result = s.reindex(target, method="nearest", tolerance=[0.3, 0.01, 0.4, 3])
169159
expected = Series([0, np.nan, np.nan, 2], target)
170-
tm.assert_series_equal(expected, actual)
160+
tm.assert_series_equal(expected, result)
171161

172162

173163
def test_reindex_backfill():
@@ -237,25 +227,6 @@ def test_reindex_categorical():
237227
tm.assert_series_equal(result, expected)
238228

239229

240-
def test_reindex_like(datetime_series):
241-
other = datetime_series[::2]
242-
tm.assert_series_equal(
243-
datetime_series.reindex(other.index), datetime_series.reindex_like(other)
244-
)
245-
246-
# GH 7179
247-
day1 = datetime(2013, 3, 5)
248-
day2 = datetime(2013, 5, 5)
249-
day3 = datetime(2014, 3, 5)
250-
251-
series1 = Series([5, None, None], [day1, day2, day3])
252-
series2 = Series([None, None], [day1, day3])
253-
254-
result = series1.reindex_like(series2, method="pad")
255-
expected = Series([5, np.nan], index=[day1, day3])
256-
tm.assert_series_equal(result, expected)
257-
258-
259230
def test_reindex_fill_value():
260231
# -----------------------------------------------------------
261232
# floats
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
from datetime import datetime
2+
3+
import numpy as np
4+
5+
from pandas import Series
6+
import pandas._testing as tm
7+
8+
9+
def test_reindex_like(datetime_series):
10+
other = datetime_series[::2]
11+
tm.assert_series_equal(
12+
datetime_series.reindex(other.index), datetime_series.reindex_like(other)
13+
)
14+
15+
# GH#7179
16+
day1 = datetime(2013, 3, 5)
17+
day2 = datetime(2013, 5, 5)
18+
day3 = datetime(2014, 3, 5)
19+
20+
series1 = Series([5, None, None], [day1, day2, day3])
21+
series2 = Series([None, None], [day1, day3])
22+
23+
result = series1.reindex_like(series2, method="pad")
24+
expected = Series([5, np.nan], index=[day1, day3])
25+
tm.assert_series_equal(result, expected)
26+
27+
28+
def test_reindex_like_nearest():
29+
ser = Series(np.arange(10, dtype="int64"))
30+
31+
target = [0.1, 0.9, 1.5, 2.0]
32+
other = ser.reindex(target, method="nearest")
33+
expected = Series(np.around(target).astype("int64"), target)
34+
35+
result = ser.reindex_like(other, method="nearest")
36+
tm.assert_series_equal(expected, result)
37+
38+
result = ser.reindex_like(other, method="nearest", tolerance=1)
39+
tm.assert_series_equal(expected, result)
40+
result = ser.reindex_like(other, method="nearest", tolerance=[1, 2, 3, 4])
41+
tm.assert_series_equal(expected, result)

0 commit comments

Comments
 (0)