在Pandas中,如果想要在一个DataFrame的特定位置插入列,可以使用insert()
方法。
这个方法需要三个参数:要插入的列的索引位置、新列的名称以及新列的值。索引位置是指新列应该出现在DataFrame中的哪个位置,它是基于0的索引,即第一个位置的索引是0。
import pandas as pd
df = pd.DataFrame({
'A': [1, 2, 3],
'B': [4, 5, 6],
'C': [7, 8, 9]
})
# 在位置1插入新列'NewCol',其值为[10, 11, 12]
df.insert(1, 'NewCol', [10, 11, 12])
print("\n插入新列后的DataFrame:")
print(df)
A NewCol B C
0 1 10 4 7
1 2 11 5 8
2 3 12 6 9
如果想要在某个现有列之后插入新列,可以使用现有列的索引(df.columns.get_loc)加一作为插入位置:
# 在列'B'之后插入新列'NewCol2',其值为[100, 101, 102]
df.insert(df.columns.get_loc('B') + 1, 'NewCol2', [100, 101, 102])
A NewCol B NewCol2 C
0 1 10 4 100 7
1 2 11 5 101 8
2 3 12 6 102 9