MCPcopy
hub / github.com/pandas-dev/pandas / test_rename

Method test_rename

pandas/tests/frame/methods/test_rename.py:40–78  ·  view source on GitHub ↗
(self, float_frame)

Source from the content-addressed store, hash-verified

38 obj.rename(str.lower)
39
40 def test_rename(self, float_frame):
41 mapping = {"A": "a", "B": "b", "C": "c", "D": "d"}
42
43 renamed = float_frame.rename(columns=mapping)
44 renamed2 = float_frame.rename(columns=str.lower)
45
46 tm.assert_frame_equal(renamed, renamed2)
47 tm.assert_frame_equal(
48 renamed2.rename(columns=str.upper), float_frame, check_names=False
49 )
50
51 # index
52 data = {"A": {"foo": 0, "bar": 1}}
53
54 df = DataFrame(data)
55 renamed = df.rename(index={"foo": "bar", "bar": "foo"})
56 tm.assert_index_equal(renamed.index, Index(["bar", "foo"]))
57
58 renamed = df.rename(index=str.upper)
59 tm.assert_index_equal(renamed.index, Index(["FOO", "BAR"]))
60
61 # have to pass something
62 with pytest.raises(TypeError, match="must pass an index to rename"):
63 float_frame.rename()
64
65 # partial columns
66 renamed = float_frame.rename(columns={"C": "foo", "D": "bar"})
67 tm.assert_index_equal(renamed.columns, Index(["A", "B", "foo", "bar"]))
68
69 # other axis
70 renamed = float_frame.T.rename(index={"C": "foo", "D": "bar"})
71 tm.assert_index_equal(renamed.index, Index(["A", "B", "foo", "bar"]))
72
73 # index with name
74 index = Index(["foo", "bar"], name="name")
75 renamer = DataFrame(data, index=index)
76 renamed = renamer.rename(index={"foo": "bar", "bar": "foo"})
77 tm.assert_index_equal(renamed.index, Index(["bar", "foo"], name="name"))
78 assert renamed.index.name == renamer.index.name
79
80 @pytest.mark.parametrize(
81 "args,kwargs",

Callers

nothing calls this directly

Calls 5

renameMethod · 0.95
DataFrameClass · 0.90
IndexClass · 0.90
renameMethod · 0.45
raisesMethod · 0.45

Tested by

no test coverage detected