@@ -2061,6 +2061,25 @@ def test_rank_object_raises(self, ties_method, ascending, na_option,
2061
2061
ascending = ascending ,
2062
2062
na_option = na_option , pct = pct )
2063
2063
2064
+ @pytest .mark .parametrize ("fill_method,limit,exp_vals" , [
2065
+ ("ffill" , None ,
2066
+ [np .nan , np .nan , 'foo' , 'foo' , 'foo' , 'bar' , 'bar' , 'bar' ]),
2067
+ ("ffill" , 1 ,
2068
+ [np .nan , np .nan , 'foo' , 'foo' , np .nan , 'bar' , 'bar' , np .nan ]),
2069
+ ("bfill" , None ,
2070
+ ['foo' , 'foo' , 'foo' , 'bar' , 'bar' , 'bar' , np .nan , np .nan ]),
2071
+ ("bfill" , 1 ,
2072
+ [np .nan , 'foo' , 'foo' , np .nan , 'bar' , 'bar' , np .nan , np .nan ])
2073
+ ])
2074
+ def test_group_fill_methods (self , fill_method , limit , exp_vals ):
2075
+ vals = [np .nan , np .nan , 'foo' , np .nan , np .nan , 'bar' , np .nan , np .nan ]
2076
+ keys = ['a' ] * len (vals ) + ['b' ] * len (vals )
2077
+ df = DataFrame ({'key' : keys , 'val' : vals * 2 })
2078
+ result = getattr (df .groupby ('key' ), fill_method )(limit = limit )
2079
+
2080
+ exp = DataFrame ({'key' : keys , 'val' : exp_vals * 2 })
2081
+ assert_frame_equal (result , exp )
2082
+
2064
2083
def test_dont_clobber_name_column (self ):
2065
2084
df = DataFrame ({'key' : ['a' , 'a' , 'a' , 'b' , 'b' , 'b' ],
2066
2085
'name' : ['foo' , 'bar' , 'baz' ] * 2 })
0 commit comments