修改Pandas DataFrame中的列名和行索引是一项常见的任务,可以通过以下方式实现。
修改列名:
- 使用DataFrame的rename()方法,该方法可以使用字典形式或函数方式进行操作。
- 使用DataFrame的columns属性,该属性可以修改全部列名,但需要一并指定所有列名。
例如,我们有以下DataFrame,需要修改其中两列的名称:
import pandas as pd
data = {
'name': ['Tom', 'Lucy', 'Sam'],
'age': [25, 29, 23],
'gender': ['M', 'F', 'M']
}
df = pd.DataFrame(data)
现在需要将'name'列和'gender'列的名称改为'Name'和'Sex',可以使用rename()方法进行修改。
df.rename(columns={'name': 'Name', 'gender': 'Sex'}, inplace=True)
print(df)
输出如下:
Name age Sex
0 Tom 25 M
1 Lucy 29 F
2 Sam 23 M
如果需要将所有列名进行修改,也可以使用columns属性进行操作,例子如下:
df.columns = ['Name', 'Age', 'Sex']
print(df)
输出结果如下:
Name Age Sex
0 Tom 25 M
1 Lucy 29 F
2 Sam 23 M
修改行索引:
- 使用DataFrame的set_index()方法,该方法可以将一个或多个列设置为行索引。
- 使用DataFrame的rename_axis()方法,可以修改行索引名称。
例如,我们有以下DataFrame,需要将第一列'name'设置为行索引:
data = {
'name': ['Tom', 'Lucy', 'Sam'],
'age': [25, 29, 23],
'gender': ['M', 'F', 'M']
}
df = pd.DataFrame(data)
可以使用set_index()方法将'name'列设置为行索引:
df.set_index('name', inplace=True)
print(df)
输出如下:
age gender
name
Tom 25 M
Lucy 29 F
Sam 23 M
如果需要修改行索引名称,可以使用rename_axis()方法,例如将原先名称为'name'修改为'Name':
df.rename_axis('Name', inplace=True)
print(df)
输出结果如下:
age gender
Name
Tom 25 M
Lucy 29 F
Sam 23 M
以上就是Python在Pandas DataFrame中修改列名和行索引的攻略和实例演示。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python 在Pandas DataFrame中改变列名和行索引 - Python技术站