From 9945eb787eb765f692a06745567338d14cfd39b4 Mon Sep 17 00:00:00 2001 From: ftrihardjo Date: Sun, 7 Feb 2021 19:44:35 +0700 Subject: [PATCH 1/4] pandas-dev issue #24211 --- pandas/tests/groupby/transform/test_transform.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pandas/tests/groupby/transform/test_transform.py b/pandas/tests/groupby/transform/test_transform.py index 3f04f0f1163e7..ee39568cb29e1 100644 --- a/pandas/tests/groupby/transform/test_transform.py +++ b/pandas/tests/groupby/transform/test_transform.py @@ -938,6 +938,16 @@ def test_any_all_np_func(func): tm.assert_series_equal(res, exp) +def test_transform_ffill(): + # GH 24211 + data = [["a", 0.0], ["a", float("nan")], ["b", 1.0], ["b", float("nan")]] + df = DataFrame(data, columns=["key", "values"]) + tm.assert_series_equal( + df.groupby("key").transform("ffill")["values"], + df.groupby("key")["values"].transform("ffill"), + ) + + def test_groupby_transform_rename(): # https://github.com/pandas-dev/pandas/issues/23461 def demean_rename(x): From 4080287a337633d5615e9022efd841732327875a Mon Sep 17 00:00:00 2001 From: ftrihardjo Date: Mon, 8 Feb 2021 08:14:38 +0700 Subject: [PATCH 2/4] pandas-dev issue #24211 --- .../tests/groupby/transform/test_transform.py | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/pandas/tests/groupby/transform/test_transform.py b/pandas/tests/groupby/transform/test_transform.py index ee39568cb29e1..519ce74d588b0 100644 --- a/pandas/tests/groupby/transform/test_transform.py +++ b/pandas/tests/groupby/transform/test_transform.py @@ -769,6 +769,15 @@ def test_transform_numeric_ret(cols, exp, comp_func, agg_func, request): comp_func(result, exp) +def test_transform_ffill(): + # GH 24211 + data = [["a", 0.0], ["a", float("nan")], ["b", 1.0], ["b", float("nan")]] + df = DataFrame(data, columns=["key", "values"]) + expected = df.groupby("key").transform("ffill")["values"] + result = df.groupby("key")["values"].transform("ffill") + tm.assert_series_equal(result, expected) + + @pytest.mark.parametrize("mix_groupings", [True, False]) @pytest.mark.parametrize("as_series", [True, False]) @pytest.mark.parametrize("val1,val2", [("foo", "bar"), (1, 2), (1.0, 2.0)]) @@ -938,16 +947,6 @@ def test_any_all_np_func(func): tm.assert_series_equal(res, exp) -def test_transform_ffill(): - # GH 24211 - data = [["a", 0.0], ["a", float("nan")], ["b", 1.0], ["b", float("nan")]] - df = DataFrame(data, columns=["key", "values"]) - tm.assert_series_equal( - df.groupby("key").transform("ffill")["values"], - df.groupby("key")["values"].transform("ffill"), - ) - - def test_groupby_transform_rename(): # https://github.com/pandas-dev/pandas/issues/23461 def demean_rename(x): From f68b82b041babfaf167e69dafc55b9bc49b8331a Mon Sep 17 00:00:00 2001 From: ftrihardjo Date: Fri, 12 Feb 2021 11:58:42 +0700 Subject: [PATCH 3/4] pandas-dev issue #24211 --- pandas/tests/groupby/transform/test_transform.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pandas/tests/groupby/transform/test_transform.py b/pandas/tests/groupby/transform/test_transform.py index 519ce74d588b0..5d744942235f5 100644 --- a/pandas/tests/groupby/transform/test_transform.py +++ b/pandas/tests/groupby/transform/test_transform.py @@ -773,8 +773,11 @@ def test_transform_ffill(): # GH 24211 data = [["a", 0.0], ["a", float("nan")], ["b", 1.0], ["b", float("nan")]] df = DataFrame(data, columns=["key", "values"]) - expected = df.groupby("key").transform("ffill")["values"] + result = df.groupby("key").transform("ffill") + expected = DataFrame({"values": [0.0, 0.0, 1.0, 1.0]}) + tm.assert_frame_equal(result, expected) result = df.groupby("key")["values"].transform("ffill") + expected = Series([0.0, 0.0, 1.0, 1.0]) tm.assert_series_equal(result, expected) From 1099913f30486590fc31363f33e2568d88bd74d3 Mon Sep 17 00:00:00 2001 From: ftrihardjo Date: Fri, 12 Feb 2021 12:47:01 +0700 Subject: [PATCH 4/4] pandas-dev issue #24211 --- pandas/tests/groupby/transform/test_transform.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pandas/tests/groupby/transform/test_transform.py b/pandas/tests/groupby/transform/test_transform.py index 5d744942235f5..04eb2f42d745b 100644 --- a/pandas/tests/groupby/transform/test_transform.py +++ b/pandas/tests/groupby/transform/test_transform.py @@ -777,7 +777,7 @@ def test_transform_ffill(): expected = DataFrame({"values": [0.0, 0.0, 1.0, 1.0]}) tm.assert_frame_equal(result, expected) result = df.groupby("key")["values"].transform("ffill") - expected = Series([0.0, 0.0, 1.0, 1.0]) + expected = Series([0.0, 0.0, 1.0, 1.0], name="values") tm.assert_series_equal(result, expected)