Dataframe 使用rename重命名标签后没有生效

Dataframe中rename()“未生效”的原因

在做题过程中,使用以下代码存在一个问题:

import pandas as pd

A = pd.DataFrame( {0:[1,2,3], 1:[4,5,6]} )
print(A)
"""
得到输出:
   0  1  
0  1  4
1  2  5
2  3  6
"""

A.rename(columns = {0:'A', 1:'B'})
print(A)
"""
输出仍为:
   0  1  
0  1  4
1  2  5
2  3  6
"""
PYTHON 复制 全屏

这是因为rename()函数默认情况下并不在原始数据上进行更改,它会返回一个修改后标签的副本(当inplace参数为默认的False时):

B = A.rename(columns = {0:'A', 1:'B'})
print(B)
"""
输出为:
   A  B  
0  1  4
1  2  5
2  3  6
"""
PYTHON 复制 全屏

若要在原始数据上进行修改,可以将rename()中的inplace参数设为True

A.rename(columns = {0:'A', 1:'B'}, inplace=True)
print(A)
"""
输出:
   A  B  
0  1  4
1  2  5
2  3  6
"""

评论