Skip to content

Commit

Permalink
Backport PR pandas-dev#54504: Move Unit Tests for groupby.rolling.corr
Browse files Browse the repository at this point in the history
  • Loading branch information
omar-elbaz authored and meeseeksmachine committed Aug 12, 2023
1 parent 1b2d39c commit d56e9b0
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 26 deletions.
26 changes: 0 additions & 26 deletions pandas/tests/groupby/test_groupby.py
Original file line number Diff line number Diff line change
Expand Up @@ -3159,29 +3159,3 @@ def test_groupby_series_with_datetimeindex_month_name():
expected = Series([2, 1], name="jan")
expected.index.name = "jan"
tm.assert_series_equal(result, expected)


def test_rolling_corr_grouping_column_contains_tuples_1(df):
# GH 44078
df = DataFrame({"a": [(1,), (1,), (1,)], "b": [4, 5, 6]})
gb = df.groupby(["a"])
result = gb.rolling(2).corr(other=df)
index = MultiIndex.from_tuples([((1,), 0), ((1,), 1), ((1,), 2)], names=["a", None])
expected = DataFrame(
{"a": [np.nan, np.nan, np.nan], "b": [np.nan, 1.0, 1.0]}, index=index
)
tm.assert_frame_equal(result, expected)


def test_rolling_corr_case_grrouping_column_contains_tuples_2(df):
# GH 44078
df = DataFrame({"a": [(1, 2), (1, 2), (1, 2)], "b": [4, 5, 6]})
gb = df.groupby(["a"])
result = gb.rolling(2).corr(other=df)
index = MultiIndex.from_tuples(
[((1, 2), 0), ((1, 2), 1), ((1, 2), 2)], names=["a", None]
)
expected = DataFrame(
{"a": [np.nan, np.nan, np.nan], "b": [np.nan, 1.0, 1.0]}, index=index
)
tm.assert_frame_equal(result, expected)
44 changes: 44 additions & 0 deletions pandas/tests/window/test_groupby.py
Original file line number Diff line number Diff line change
Expand Up @@ -1230,3 +1230,47 @@ def test_dont_mutate_obj_after_slicing(self):
# This is the key test
result = grp.count()
tm.assert_frame_equal(result, expected_df)


def test_rolling_corr_with_single_integer_in_index():
# GH 44078
df = DataFrame({"a": [(1,), (1,), (1,)], "b": [4, 5, 6]})
gb = df.groupby(["a"])
result = gb.rolling(2).corr(other=df)
index = MultiIndex.from_tuples([((1,), 0), ((1,), 1), ((1,), 2)], names=["a", None])
expected = DataFrame(
{"a": [np.nan, np.nan, np.nan], "b": [np.nan, 1.0, 1.0]}, index=index
)
tm.assert_frame_equal(result, expected)


def test_rolling_corr_with_tuples_in_index():
# GH 44078
df = DataFrame(
{
"a": [
(
1,
2,
),
(
1,
2,
),
(
1,
2,
),
],
"b": [4, 5, 6],
}
)
gb = df.groupby(["a"])
result = gb.rolling(2).corr(other=df)
index = MultiIndex.from_tuples(
[((1, 2), 0), ((1, 2), 1), ((1, 2), 2)], names=["a", None]
)
expected = DataFrame(
{"a": [np.nan, np.nan, np.nan], "b": [np.nan, 1.0, 1.0]}, index=index
)
tm.assert_frame_equal(result, expected)

0 comments on commit d56e9b0

Please sign in to comment.