Skip to content

Commit 8479fe3

Browse files
WIP: Thinking of better way than a copy
1 parent 0cbc075 commit 8479fe3

File tree

3 files changed

+14
-5
lines changed

3 files changed

+14
-5
lines changed

pandas/core/generic.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -5620,7 +5620,7 @@ def rank(self, axis=0, method='average', numeric_only=None,
56205620
raise NotImplementedError(msg)
56215621

56225622
def ranker(data):
5623-
ranks = algos.rank(data.values.copy(), axis=axis, method=method,
5623+
ranks = algos.rank(data.values, axis=axis, method=method,
56245624
ascending=ascending, na_option=na_option,
56255625
pct=pct)
56265626
ranks = self._constructor(ranks, **data._construct_axes_dict())

pandas/tests/frame/test_analytics.py

+8
Original file line numberDiff line numberDiff line change
@@ -2174,3 +2174,11 @@ def test_series_broadcasting(self):
21742174
df_nan.clip_lower(s, axis=0)
21752175
for op in ['lt', 'le', 'gt', 'ge', 'eq', 'ne']:
21762176
getattr(df, op)(s_nan, axis=0)
2177+
2178+
def test_series_nat_conversion(self):
2179+
# GH 18521
2180+
df = DataFrame(np.random.randn(10, 3), dtype='float64')
2181+
expected = df.copy()
2182+
df.rank()
2183+
result = df
2184+
tm.assert_frame_equal(result, expected)

pandas/tests/series/test_rank.py

+5-4
Original file line numberDiff line numberDiff line change
@@ -304,8 +304,9 @@ def test_rank_object_bug(self):
304304

305305
def test_rank_modify_inplace(self):
306306
# GH 18521
307-
df = Series([Timestamp('2017-01-05 10:20:27.569000'), NaT])
308-
pre_rank_df = df.copy()
307+
s = Series([Timestamp('2017-01-05 10:20:27.569000'), NaT])
308+
expected = s.copy()
309309

310-
df.rank()
311-
assert_series_equal(df, pre_rank_df)
310+
s.rank()
311+
result = s
312+
assert_series_equal(result, expected)

0 commit comments

Comments
 (0)