คำตอบที่เลือกในปัจจุบันไม่ได้กล่าวถึงrename_axisวิธีการที่สามารถใช้เพื่อเปลี่ยนชื่อดัชนีและระดับคอลัมน์
นุ่นมีนิสัยแปลก ๆ เมื่อต้องเปลี่ยนชื่อระดับของดัชนี นอกจากนี้ยังมีเมธอด DataFrame ใหม่rename_axisเพื่อเปลี่ยนชื่อระดับดัชนี
มาดู DataFrame กัน
df = pd.DataFrame({'age':[30, 2, 12],
                       'color':['blue', 'green', 'red'],
                       'food':['Steak', 'Lamb', 'Mango'],
                       'height':[165, 70, 120],
                       'score':[4.6, 8.3, 9.0],
                       'state':['NY', 'TX', 'FL']},
                       index = ['Jane', 'Nick', 'Aaron'])

DataFrame นี้มีหนึ่งระดับสำหรับดัชนีแถวและคอลัมน์แต่ละรายการ ทั้งดัชนีแถวและคอลัมน์ไม่มีชื่อ เปลี่ยนชื่อระดับดัชนีแถวเป็น 'ชื่อ'
df.rename_axis('names')

rename_axisวิธีการยังมีความสามารถในการเปลี่ยนชื่อคอลัมน์ระดับโดยการเปลี่ยนaxisพารามิเตอร์:
df.rename_axis('names').rename_axis('attributes', axis='columns')

หากคุณตั้งค่าดัชนีด้วยคอลัมน์บางคอลัมน์ชื่อคอลัมน์จะกลายเป็นชื่อระดับดัชนีใหม่ ต่อท้ายระดับดัชนีใน DataFrame เดิมของเรา:
df1 = df.set_index(['state', 'color'], append=True)
df1

สังเกตว่าดัชนีเดิมไม่มีชื่ออย่างไร เรายังคงสามารถใช้งานได้rename_axisแต่ต้องส่งผ่านรายการที่มีความยาวเท่ากับจำนวนระดับดัชนี
df1.rename_axis(['names', None, 'Colors'])

คุณสามารถใช้Noneเพื่อลบชื่อระดับดัชนีได้อย่างมีประสิทธิภาพ
ซีรีส์ทำงานคล้ายกัน แต่มีความแตกต่างบางประการ
มาสร้างซีรี่ส์ที่มีดัชนีสามระดับ
s = df.set_index(['state', 'color'], append=True)['food']
s
       state  color
Jane   NY     blue     Steak
Nick   TX     green     Lamb
Aaron  FL     red      Mango
Name: food, dtype: object
เราสามารถใช้rename_axisในลักษณะเดียวกับที่เราทำกับ DataFrames
s.rename_axis(['Names','States','Colors'])
Names  States  Colors
Jane   NY      blue      Steak
Nick   TX      green      Lamb
Aaron  FL      red       Mango
Name: food, dtype: object
Nameขอให้สังเกตว่ามีชิ้นพิเศษของเมตาดาต้าดังต่อไปนี้เรียกว่าซีรีส์ เมื่อสร้างซีรี่ส์จาก DataFrame แอตทริบิวต์นี้จะถูกตั้งค่าเป็นชื่อคอลัมน์
เราสามารถส่งชื่อสตริงไปยังrenameเมธอดเพื่อเปลี่ยนได้
s.rename('FOOOOOD')
       state  color
Jane   NY     blue     Steak
Nick   TX     green     Lamb
Aaron  FL     red      Mango
Name: FOOOOOD, dtype: object
DataFrames ไม่มีแอตทริบิวต์นี้และ infact จะเพิ่มข้อยกเว้นหากใช้เช่นนี้
df.rename('my dataframe')
TypeError: 'str' object is not callable
ก่อนหน้าแพนด้า 0.21 คุณสามารถใช้rename_axisเพื่อเปลี่ยนชื่อค่าในดัชนีและคอลัมน์ เลิกใช้งานแล้วดังนั้นอย่าทำเช่นนี้
     
              
rename_axisวิธีการ