下面是关于“Pythonpandas.DataFrame调整列顺序及修改index名的方法”的完整攻略。
1. 调整列顺序
在 Pandas 中,可以使用 DataFrame
对象的 loc
或 iloc
属性来调整列顺序。其中,loc
使用列名定位列,而 iloc
则使用列索引定位列。
下面是使用 loc
和 iloc
来调整列顺序的示例:
import pandas as pd
# 创建 DataFrame
df = pd.DataFrame({'name': ['Amy', 'Bob', 'Cathy'],
'gender': ['F', 'M', 'F'],
'age': [18, 25, 22]})
# 使用 loc 调整列顺序
df = df.loc[:, ['name', 'age', 'gender']]
print(df)
# 使用 iloc 调整列顺序
df = df.iloc[:, [0, 2, 1]]
print(df)
输出结果如下:
name age gender
0 Amy 18 F
1 Bob 25 M
2 Cathy 22 F
name gender age
0 Amy F 18
1 Bob M 25
2 Cathy F 22
首先,创建了一个包含name
、gender
和 age
三列数据的 DataFrame。然后,使用 loc
和 iloc
对列进行调整,最后输出了调整后的结果。其中,loc[:, ['name', 'age', 'gender']]
表示选择所有行,按照列名的顺序重新设置列的顺序;而 iloc[:, [0, 2, 1]]
则表示选择所有行,按照列索引的顺序重新设置列的顺序。
需要注意的是,在进行列调整后,df
数据的列顺序会被改变。如果需要保留原 DataFrame 的顺序,则需要将调整后的 DataFrame 赋值给原 DataFrame。
2. 修改 index 名
在 Pandas 中,修改 DataFrame 的 index 名需要使用 DataFrame.rename()
方法。该方法支持传入一个函数用来修改 index 名,或者传入一个字典用来映射 index 名。
下面是使用 DataFrame.rename()
方法修改 index 名的示例:
import pandas as pd
# 创建 DataFrame
df = pd.DataFrame({'name': ['Amy', 'Bob', 'Cathy'],
'gender': ['F', 'M', 'F'],
'age': [18, 25, 22]})
# 修改 index 名
df = df.rename(index={0: 'A', 1: 'B', 2: 'C'})
print(df)
输出结果如下:
name gender age
A Amy F 18
B Bob M 25
C Cathy F 22
首先,创建了一个包含 name
、gender
和 age
三列数据的 DataFrame。然后,使用 DataFrame.rename()
方法将 index 从 0~2
修改为 A~C
。其中,index={0: 'A', 1: 'B', 2: 'C'}
表示将第 0 行、第 1 行和第 2 行的 index 分别修改为 A
、B
和 C
。
需要注意的是,在修改 index 名后,df
数据的 index 名会被改变。如果需要保留原 DataFrame 的 index 名,则需要将修改后的 DataFrame 赋值给原 DataFrame。
至此,“Pythonpandas.DataFrame调整列顺序及修改index名的方法”的完整攻略介绍完毕。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python pandas.DataFrame调整列顺序及修改index名的方法 - Python技术站