@@ -11166,6 +11166,26 @@ def test_quantile(self):
1116611166 xp = df.median()
1116711167 assert_series_equal(rs, xp)
1116811168
11169+ # axis
11170+ df = DataFrame({"A": [1, 2, 3], "B": [2, 3, 4]}, index=[1, 2, 3])
11171+ result = df.quantile(.5, axis=1)
11172+ expected = Series([1.5, 2.5, 3.5], index=[1, 2, 3])
11173+ assert_series_equal(result, expected)
11174+
11175+ result = df.quantile([.5, .75], axis=1)
11176+ expected = DataFrame({1: [1.5, 1.75], 2: [2.5, 2.75],
11177+ 3: [3.5, 3.75]}, index=["0.5", "0.75"])
11178+ assert_frame_equal(result, expected)
11179+
11180+ # We may want to break API in the future to change this
11181+ # so that we exclude non-numeric along the same axis
11182+ # See GH #7312
11183+ df = DataFrame([[1, 2, 3],
11184+ ['a', 'b', 4]])
11185+ result = df.quantile(.5, axis=1)
11186+ expected = Series([3., 4.], index=[0, 1])
11187+ assert_series_equal(result, expected)
11188+
1116911189 def test_quantile_multi(self):
1117011190 df = DataFrame([[1, 1, 1], [2, 2, 2], [3, 3, 3]],
1117111191 columns=['a', 'b', 'c'])
@@ -11204,6 +11224,20 @@ def test_quantile_datetime(self):
1120411224 index=[.5], columns=['a', 'b'])
1120511225 assert_frame_equal(result, expected)
1120611226
11227+ # axis = 1
11228+ df['c'] = pd.to_datetime(['2011', '2012'])
11229+ result = df[['a', 'c']].quantile(.5, axis=1, numeric_only=False)
11230+ expected = Series([Timestamp('2010-07-02 12:00:00'),
11231+ Timestamp('2011-07-02 12:00:00')],
11232+ index=[0, 1])
11233+ assert_series_equal(result, expected)
11234+
11235+ result = df[['a', 'c']].quantile([.5], axis=1, numeric_only=False)
11236+ expected = DataFrame([[Timestamp('2010-07-02 12:00:00'),
11237+ Timestamp('2011-07-02 12:00:00')]],
11238+ index=[0.5], columns=[0, 1])
11239+ assert_frame_equal(result, expected)
11240+
1120711241 def test_cumsum(self):
1120811242 self.tsframe.ix[5:10, 0] = nan
1120911243 self.tsframe.ix[10:15, 1] = nan
0 commit comments