Pandas:如何用字典重命名列
您可以使用以下基本语法在 pandas 中使用字典重命名列:
#define dictionary some_dict = {' old_col1 ': ' new_col1 ', ' old_col2 ': ' new_col2 ', ' old_col3 ': ' new_col3 '} #rename columns in DataFrame using dictionary df. rename (columns=some_dict, inplace= True )
注意:必须指定inplace=True才能修改原始 DataFrame 的列名称。
以下示例展示了如何在实践中使用此语法。
示例:使用字典重命名 Pandas 中的列
假设我们有以下 pandas DataFrame:
import pandas as pd #createDataFrame df = pd. DataFrame ({' rebounds ': [10, 14, 14, 13, 13, 12, 10, 7], ' points ': [30, 22, 19, 14, 14, 11, 20, 28], ' assists ': [5, 6, 6, 5, 8, 7, 7, 9]}) #view DataFrame print (df) rebound points assists 0 10 30 5 1 14 22 6 2 14 19 6 3 13 14 5 4 13 14 8 5 12 11 7 6 10 20 7 7 7 28 9
我们可以使用以下语法使用字典重命名 DataFrame 中的每一列:
#define dictionary with new column names
some_dict = {' rebounds ': ' rebs ',
' points ': ' pts ',
' assists ': ' ast '}
#rename columns in DataFrame using dictionary
df. rename (columns=some_dict, inplace= True )
#view updated DataFrame
print (df)
rebs pts ast
0 10 30 5
1 14 22 6
2 14 19 6
3 13 14 5
4 13 14 8
5 12 11 7
6 10 20 7
7 7 28 9
请注意,每一列都已根据我们在字典中指定的值进行了重命名。
值得注意的是,您不必使用字典重命名每一列。
例如,我们可以创建一个字典来仅重命名 DataFrame 的点和辅助列:
#define dictionary with new column names for points and assists only
some_dict = {' points ':' pts ',
' assists ': ' ast '}
#rename columns in DataFrame using dictionary
df. rename (columns=some_dict, inplace= True )
#view updated DataFrame
print (df)
rebounds pts ast
0 10 30 5
1 14 22 6
2 14 19 6
3 13 14 5
4 13 14 8
5 12 11 7
6 10 20 7
7 7 28 9
仅对得分和助攻栏进行了重命名。
由于反弹列未包含在字典中,因此未在 DataFrame 中重命名。
其他资源
以下教程解释了如何在 pandas 中执行其他常见操作: