Skip to content

Commit 6fcfae0

Browse files
committed
Added tests for rank bugs
1 parent 6d708f6 commit 6fcfae0

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

pandas/tests/groupby/test_groupby.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2026,6 +2026,24 @@ def test_rank_args_missing(self, grps, vals, ties_method, ascending,
20262026
exp_df = DataFrame(exp * len(grps), columns=['val'])
20272027
assert_frame_equal(result, exp_df)
20282028

2029+
@pytest.mark.parametrize("pct,exp", [
2030+
(False, [3., 3., 3., 3., 3.]),
2031+
(True, [.6, .6, .6, .6, .6])])
2032+
def test_rank_resets_each_group(self, pct, exp):
2033+
df = DataFrame(
2034+
{'key': ['a', 'a', 'a', 'a', 'a', 'b', 'b', 'b', 'b', 'b'],
2035+
'val': [1] * 10}
2036+
)
2037+
result = df.groupby('key').rank(pct=pct)
2038+
exp_df = DataFrame(exp * 2, columns=['val'])
2039+
assert_frame_equal(result, exp_df)
2040+
2041+
def test_rank_avg_even_vals(self):
2042+
df = DataFrame({'key': ['a'] * 4, 'val': [1] * 4})
2043+
result = df.groupby('key').rank()
2044+
exp_df = DataFrame([2.5, 2.5, 2.5, 2.5], columns=['val'])
2045+
assert_frame_equal(result, exp_df)
2046+
20292047
@pytest.mark.parametrize("ties_method", [
20302048
'average', 'min', 'max', 'first', 'dense'])
20312049
@pytest.mark.parametrize("ascending", [True, False])

0 commit comments

Comments
 (0)