@@ -41,6 +41,12 @@ def _skip_if_mpl_not_installed():
4141 except ImportError :
4242 raise nose .SkipTest ("matplotlib not installed" )
4343
44+
45+ def _skip_if_np_version_under1p7 ():
46+ if _np_version_under1p7 :
47+ raise nose .SkipTest ("numpy version 1.7 has throughly broken timedelta" )
48+
49+
4450def commonSetUp (self ):
4551 self .dateRange = bdate_range ('1/1/2005' , periods = 250 )
4652 self .stringIndex = Index ([rands (8 ).upper () for x in range (250 )])
@@ -607,21 +613,24 @@ def f(grp):
607613 if not _np_version_under1p7 :
608614 df1 = df .copy ()
609615 df1 ['D' ] = pd .to_timedelta (['00:00:01' , '00:00:02' , '00:00:03' ,
610- '00:00:04' , '00:00:05' , '00:00:06' , '00:00:07' ])
616+ '00:00:04' , '00:00:05' , '00:00:06' ,
617+ '00:00:07' ])
611618 result = df1 .groupby ('A' ).apply (f )[['D' ]]
612619 e = df1 .groupby ('A' ).first ()[['D' ]]
613620 e .loc ['Pony' ] = np .nan
621+ print (type (result ))
622+ print (type (e ))
614623 assert_frame_equal (result , e )
615624
616625 def f (grp ):
617626 if grp .name == 'Pony' :
618627 return None
619628 return grp .iloc [0 ].loc ['D' ]
620- result = df1 .groupby ('A' ).apply (f )
629+ result = df1 .groupby ('A' ).apply (f )[ 'D' ]
621630 e = df1 .groupby ('A' ).first ()['D' ].copy ()
622631 e .loc ['Pony' ] = np .nan
623632 e .name = None
624- assert_series_equal (result ,e )
633+ assert_series_equal (result , e )
625634
626635 def test_agg_api (self ):
627636
@@ -4386,6 +4395,7 @@ def test_index_label_overlaps_location(self):
43864395 assert_series_equal (actual , expected )
43874396
43884397 def test_groupby_methods_on_timedelta64 (self ):
4398+ _skip_if_np_version_under1p7 ()
43894399 df = self .df .copy ().iloc [:4 ]
43904400 df ['E' ] = pd .to_timedelta (['00:00:01' , '00:00:02' , '00:00:03' , '00:00:04' ])
43914401 # DataFrameGroupBy
0 commit comments