dataframe调整1列位置
时间: 2025-07-05 19:11:48 浏览: 14
### 调整 Pandas DataFrame 中某一列的位置
在 Pandas 中,可以通过多种方法调整 DataFrame 的列顺序。一种常见的方式是使用 `df.pop()` 和 `df.insert()` 函数组合来实现。
#### 使用 `pop` 和 `insert` 移动单个列
通过先移除目标列并将其插入到指定位置可以轻松完成此操作:
```python
import pandas as pd
# 创建一个示例DataFrame
data = {'Name': ['Tom', 'Nick', 'John', 'Peter'],
'Age': [28, 32, 25, 35],
'Salary': [5000, 4500, 6000, 4000]}
df = pd.DataFrame(data)
# 将 'Age' 列移动到第一列
col = df.pop('Age')
df.insert(loc=0, column='Age', value=col)
print(df)
```
这段代码展示了如何将特定的一列(这里是 Age)移到最前面[^1]。
对于更复杂的重排需求,则可能需要构建新的列名列表,并基于该列表重新排列整个数据框中的所有列。
#### 构建新列序列表进行整体重排
当涉及多列或多处变动时,这种方法更为灵活有效:
```python
import pandas as pd
list_data = [[1, 2, 3, 4, 5],
[2, 3, 4, 5, 6],
[3, 4, 5, 6, 7],
[4, 5, 6, 7, 8],
[5, 6, 7, 8, 9]]
df_data = pd.DataFrame(list_data,
columns=['one', 'two', 'three', 'four', 'five'])
cols = df_data['four']
c = df_data.columns.to_list()
c.insert(c.index('one') + 1, c.pop(c.index('four')))
new_df = df_data.loc[:, c]
display(new_df)
```
上述例子说明了怎样创建一个新的列序列并将原表依据这个新次序重组[^4]。
这两种方式都可以很好地满足不同场景下的列位移需求,在实际应用中可根据具体情况选择合适的方法。
阅读全文
相关推荐


















