@@ -5949,6 +5949,31 @@ def test_ptp(self):
59495949 ser = Series (arr )
59505950 self .assertEqual (np .ptp (ser ), np .ptp (arr ))
59515951
5952+ # GH11163
5953+ s = Series ([3 , 5 , np .nan , - 3 , 10 ])
5954+ self .assertEqual (s .ptp (), 13 )
5955+ self .assertTrue (pd .isnull (s .ptp (skipna = False )))
5956+
5957+ mi = pd .MultiIndex .from_product ([['a' ,'b' ], [1 ,2 ,3 ]])
5958+ s = pd .Series ([1 , np .nan , 7 , 3 , 5 , np .nan ], index = mi )
5959+
5960+ expected = pd .Series ([6 , 2 ], index = ['a' , 'b' ], dtype = np .float64 )
5961+ self .assert_series_equal (s .ptp (level = 0 ), expected )
5962+
5963+ expected = pd .Series ([np .nan , np .nan ], index = ['a' , 'b' ])
5964+ self .assert_series_equal (s .ptp (level = 0 , skipna = False ), expected )
5965+
5966+ with self .assertRaises (ValueError ):
5967+ s .ptp (axis = 1 )
5968+
5969+ s = pd .Series (['a' , 'b' , 'c' , 'd' , 'e' ])
5970+ with self .assertRaises (TypeError ):
5971+ s .ptp ()
5972+
5973+ with self .assertRaises (NotImplementedError ):
5974+ s .ptp (numeric_only = True )
5975+
5976+
59525977 def test_asof (self ):
59535978 # array or list or dates
59545979 N = 50
0 commit comments